Backwards Compatible Permalinks



Backwards Compatible Permalinks helps prevent 404 errors when switching between permalink structures.

It achieves this by appending a set of backwards compatible post rewrite rules. This ensures posts are still accessible at their previous permalink after the permalink structure is updated.


Lets say your permalink structure is set to Month and name and you have a post titled I Love WordPress. That particular post would live at

But what if you wanted to switch to the Post name permalink structure and have your post live at instead?

You could but this would result in the existing post permalink 404ing when visited. Which is problematic if the previous URL was bookmarked or shared on social media.

With Backwards Compatible Permalinks installed your post would be accessible at both the old and new permalink structures:



  • This plugin does not work retroactively. i.e. you must have the plugin installed and activated prior to switching permalink structures before backwards compatibility will work.
  • Currently only standard posts are supported.
  • Backwards compatibility is not supported between certain permalink structure updates. This is due to a clash between permalink structure regex matching.
  • Backwards compatibility is only provided between the most recent permalink structure update. i.e. you cannot change your permalink structure 3 times and have backwards compatibility across all 3 structures.

Deactivate or uninstall

After deactivating or uninstalling this plugin please ensure you visit Settings > Permalinks in the WordPress admin area to flush your rewrite rules.


Contributions are welcomed on GitHub.

From within WordPress

  1. Visit Plugins > Add New.
  2. Search for Backwards Compatible Permalinks.
  3. Activate Backwards Compatible Permalinks from your Plugins page.


  1. Upload the backwards-compatible-permalinks folder to the /wp-content/plugins/ directory.
  2. Activate the Backwards Compatible Permalinks plugin through the Plugins menu in WordPress.


This is currently not supported, the post will be accessible at both URLs. I agree that this isnt the ideal behaviour but it was too tricky to support redirects while also ensuring query parameters and /page/xx and /comment-page-xx modifiers were respected during the redirect. The good news is that the canonical tag will always point to the new URL so there shouldnt be any SEO ramifications.

A single filter is available. You may use the aprea_back_compat_permalink_structure filter to provide a backwards compatible permalink structure, e.g. /%year%/%monthnum%/%day%/%postname%/.

This is helpful if you updated the permalink structure prior to installing this plugin.

Im terribly sorry! You may want to check the caveats section to see if any apply to your situation. Otherwise feel free to post in the support forums.

Leave a Reply

Your email address will not be published.

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Most Viewed Posts