A permalink structure is the URL format WordPress uses to generate permalinks for a content type. In Permalink Manager, permalink structures are called Permastructures.
They let you define a URL format for each post type or taxonomy using static text and dynamic tags such as %postname%, %category%, and %post_id%.
Unlike WordPress's built-in permalink settings, which provide limited control over standard posts and categories, Permalink Manager lets you change permalink structures for pages, custom post types and taxonomies too.
The permalink structure sets the default URL when a post or term is published. If one post or term needs a different address, you can set a custom permalink for it individually.
How to Change Permalink Structures in WordPress
Although the plugin automatically redirects native URLs to reduce SEO impact during URL updates, modifying existing URLs with strong SEO authority can still result in broken links.
By design, changes to Permastructures do not affect existing permalinks. A new permalink structure is applied only when new content is published.
This granular approach allows you to implement new URL formats, without breaking existing links and losing organic traffic.
Where to Edit Permalink Structures
To edit permalink structures, go to "Tools -> Permalink Manager" in the sidebar menu and then click on "Permastructures".
At first, the section will display the original permalink structures from before the plugin was activated.

You can keep these settings unchanged or customize them only for specific content types. For example, you can use them to add custom fields or remove the rewrite base from permalinks.
Available Tags
Within the settings fields, it is possible to add static text or dynamic tags like %category% if you want to include elements that change, like the slug from a related category.
To find out which tags you can use, click on “Available tags” to view a list of them compiled for each of content types.
How to Preview a New Permalink Structure
If you are not certain that your new "permastructures" settings are correct, try opening the sample post and inspecting the URL in the "URI Editor". The default URL, based on your updated permalink format from the "Permastructure" settings, will appear in the "Default custom permalink" row.

The ‘Default custom permalink’ field shows the URL the permalink structure would generate.
How to Apply New Settings to Existing URLs
By default, a permalink structure applies only to new content. Therefore, changing them does not automatically update your existing content URLs.
To apply those changes to existing permalinks, the most straightforward method is to use the "Regenerate/reset" tool.
The plugin applies permalink structures whenever it generates a URL, which happens in three cases:
- When a new post, page or term is published
- When URLs of existing items are manually regenerated using the "Regenerate/reset" tool
- When the "auto-update" mode is enabled, and an existing post, page or term is updated or saved
Conditional Permalink Structures
The plugin's interface allows to define a single global format for each content type separately.
If you need more control, you can use permalink_manager_filter_permastructure filter to adjust the format dynamically. This allows you to apply custom rules and dynamically adjust the permalink format for new items based on specific conditions.
For example, by using the has_term() function, you can dynamically change the default permalinks based on the post's assigned category:
/**
* How to programmatically modify post permalink formats (permastructures)
*
* @param string $permastructure The permastructure string used when default custom permalink is generated.
* @param WP_Post|WP_Term $post Post or term object
* @return string The new, filtered permastructure string used when default custom permalink is generated (for new posts or existing ones if "Regenerate/reset" tool is used)
*/
function pm_filter_post_permastructure($permastructure, $post) {
	// Filter only 'Post' permalinks
	if(empty($post->post_type) || $post->post_type !== 'post') {
		return $permastructure;
	}
	// A. Post assigned to either 'Category A' or 'Category B'
	if(has_term(array('Category A', 'Category B'), 'category', $post)) {
		$permastructure = '%category%/%postname%';
	}
	// B. Post assigned to other categories
	else {
		$permastructure = '%year%/%monthnum%/%day%/%postname%';
	}
	return $permastructure;
}
add_filter('permalink_manager_filter_permastructure', 'pm_filter_post_permastructure', 10, 2);
The code above is just a basic example. For further information and examples, please visit a dedicated page.
Tips
How to Use Post Titles Instead of Slugs in a Permalink Format
The native slugs are generated from the initial title and will not update automatically if the titles are changed later. By default, permalink structures use the same native slugs as the original WordPress permalinks.
The plugin gives you the option to replace slugs with the post title using the %native_title% tag, or to remove the slug altogether.
If you want to use the actual titles for all custom permalinks, a simpler option than using the %native_title% tag is to adjust the global slug settings.

How to Replace the Slugs With Post/Term IDs?
You can use Permalink Manager to add element IDs to custom permalinks by using the dedicated tag: %post_id% for posts and %term_id% for terms. However, if you want to use it to totally replace the slug, you will need to do a few further steps.
To begin, you must activate the "Do not automatically append the slug" option attached to permastructure settings in order to use post/term IDs instead of slugs. Furthermore, you will need to use extra code snippet to help Permalink Manager recognize URLs with numeric endings and separate them from lookalike pagination endpoints.
add_filter('permalink_manager_deep_uri_detect', '__return_true');
Once this is done, you should adjust the permastructures settings and use %post_id% tag

FAQ
Why Is the Slug Automatically Appended?
By default, Permalink Manager will add slugs to custom permalinks if there is no slug tag (e.g. %postname%) in the Permastructure settings. To turn off this feature, you can disable it in the Permastructure settings by selecting "Do not automatically append the slug" after clicking on the "Show additional settings" button.
Do I Need 301 Redirects After Changing a Permalink Structure?
Permalink Manager automatically implements auto-redirect from old URLs to new ones whenever you modify a permalink. This means visitors are seamlessly redirected to the correct page, preventing 404 errors that could harm user experience and SEO performance.
The redirect works automatically without requiring any additional configuration.
Permalink Structure vs. Individual URL: Which Should I Change?
Change the permalink structure when you want a new URL format for every item of a post type or taxonomy. If only one post, page or term needs a different address, or you want to edit many URLs by hand in the Bulk URI Editor, edit their custom permalinks instead.




