Permalinks Migration Plugin for wordpress

With this plugin, you can safely change your permalink structure without breaking the old links to your website,and even doesn’t affect your search engine rankings.


Many people want to change their permalink structure,for example, from /%year%/%monthnum%/%day%/%postname%/ to /%category%/%postname%/

But doing so will make all pages indexed by search engines become invalid,moreover, losing visitors from other sites or bookmarks that links to you.

There is a way to tell the search engines (and browsers) that the page has permenantly moved, and that the old address should be replaced by the new one . It’s called a “301 Redirect”, also known as a Permanent Redirect.When you do this, Search engines will update their indexes quickly and you won’t lose your will continue to receive traffic as though nothing had changed. This works for search engines, bookmarks, and links from other sites.

By now, you know how can you change your permalinks without losing the traffic you’re already getting. You can download this Permalink Migration Plugin to achieve this for you.

This plugin will generates a “301 Redirect” when user or spider visit your site through old permalinks,and redirect them to the new permalinks of the same post.

Do not fear to change your permalink structure now, you would never lose any visitors due to changed addresses.

Download Dean’s Permalinks Migration Plugin Version 1.0


  1. unzip and upload the file into your wp-content/plugins/ directory.
  2. Activate it on your Admin Panel->Plugin Management page.


  1. goto admin panel->options->PermalinksMigration.set the old permanlink structure of your site.
  2. goto admin panel->options->Permalinks.change the new permalink structure to what you want. (personally I recommend /%category%/%postname%/, you can read @ArunBasilLal’s tour  to learn more about how to Optimizing Permalinks for Better SEO)
  3. Done,enjoy it.


Many thanks to all of you, who have encouraged me to update my articles  and code, and who sent in bug reports and fixes.

1,686 thoughts on “Permalinks Migration Plugin for wordpress”

  1. Hi I tried your plugin but it seems not work or may be i was doing something wrong

    What you have to put in old permlink stucture
    if my page are indexed right now by id

    Do write me as soon as possible

  2. Ashish:

    you can copy current permalink stucture from
    admin panel->options->Permalinks.paste it to PermalinksMigration as the ‘old permalink structure’. and go back to options->Permalinks,change it to your new structure.

  3. Thx for replying.

    Please can you give a example what do i put in my old permalink structure if it is working by basic id structure

    I am confused with the syntax


  4. I have research something like this but your plug-in is the most handy. thank you, you save my day. One question though, what is the most seo optimized /%category%/%postname%/ or just /%postname%/?

  5. just verified the plugin in my site, it seems that it doesn’t work, because I have a page with these previously, /%postname%/ then change my structure to /%category%/%postname%/, but then when I type mydomain/my-post/ it is not redirected to mydomain/category/my-post/ so basically it is not working or i am missing something. note that i have put /%postname%/ to old structure and my permalink is now is /%category%/%postname%/

  6. Finally made this plugin work on my blog with my previous post permalink structure is now redirected to the new one. Great and thanks.

  7. Pingback: Intervisual
  8. It didn’t work for me.

    I went from:
    ->?p=123 (default) to
    -> /%post_id%/ then to
    -> /%year%/%monthnum%/%day%/%postname%/

    only to find out all the old links to me no longer worked

    went back to
    installed your plugin and tried to migrate to

    but it didnt work

    am i doing something wrong?

    could this conflict with the page links to plugin?

    thx for any help

  9. So obviously this is not a stable hack. Many people can not get it to work and nor can I. My rules are simple.

    All I use is /%postname%/ for my permalink.

    I installed the hack, made sure that /%postname%/ was filled in for the PermalinksMigration area and it was. I thin went to Permalinks and updated to my new permalink structure. Found an old url clicked it and got a 404 error hack.

    Does anyone have any idea on how to fix this?

  10. Dean, I think you should make things clear for everyone. It works for some people, but it doesn’t work for others. I think you should answer those unanswered questions right here, so others can see it.


  11. After having stupid ‘category’ in Urls for months,
    I’ve found this plug-in, changed ‘category’ into favorite keyword and
    wow – it works, searchengines are happy and traffic rises.

    Btw, second keyword is now used as category_base ;)

    Many thanks.

  12. Pingback: Gonnetorioz43
  13. Pingback: Gonnetorioz44
  14. Pingback: Gonnetorioz45
  15. Hi!
    I’d like to thanks you for this plugin! I will not use it, beacause I like my link structure, but it’s nice to see that people are working hard to make things happen :)

    Thanks a lot !


  16. I will migrate my blog for a sub-domain. (Of for
    As I do for the plugin to redirect for the new sub-domain. (Example: for
    Excuse me for the mistakes, I don’t know English very well and I am using a translator.
    Thank you very much.

  17. Wow, your plugin works like charm. You are the savior of my old permalinks.

    Thanks, Dean. I really grateful for you to have come up with this idea. It helps for those who are geek blind like me.

    Thanks again.

  18. Great work. Your plug-in made my site reorganization really simple. It’s frightfully easy to use, assuming you already have a basic knowledge of permalink syntax.

    Rock on.

  19. It works fine for me, thank you very much, I was really desperate, because some Trackbacklinks wouldn’t work anymore.
    But I had problems first. You really have to update your permalink-structure after you have enabled the plugin! Updating the permalink structure, then activating the plugin doesn’t work!
    Wanna see? new permalink vs old permalink.

    Thank you again!


    I’d recently updated my permalink struture and had been manually updating a 301 redirect page (which is a major pain in the butt because I have 400+ pages indexed).

    I saw Ade’s post at and came over here.

    Initially I was a little pissed because the plugin didnt work for me.
    And it looked like I wasn’t alone because it seems like others couldn’t get it to work too.

    After some tweaking, here’s what I found out.

    1) Go configure your old permalink structure BEFORE you activate the plugin.
    2) *****If you activate the plugin BEFORE configuring the old permalink structure, it will store the WRONG ‘old permalink’ structure, and obviously your redirects will screw up.

    3) If for some reason, you activated the plugin before configuring the ‘old permalink’ structure, just go back and deactivate the plugin, change the ‘old permalink’ structure setting and active the plugin again.

    Ok, here’s the EASIEST way to get the plugin working on a first try
    1) Configure the ‘old permalink’ configuration according to dean’s instructions.
    2) Activate the plugin.

    This is a great plugin, dean.
    I’ll be mentioning it in my blog.

    Keep up the great work!

  21. I need some help with my permalinks. I don’t know the first thing about .htaccess and the code behind all of this permalink-stuff. So any help would be apprecaited.

    I’m currently using the default WP permalink structure.
    I’d like to change the structure to: /%category%/%postname%/

    When I change the structure in the permalinks admin panel and I test the pages, I get what appears to be the main page of my site. (for example, the comment now box doesn’t appear, and there are other posts on the page).

    Any ideas what might be causing this?

  22. Could someone please provide me with the exact steps and syntax, beacuse, like many people here, it doesn’t seem too straight forward.

  23. Hey, im having troubles…
    I’ve just install the new WP2.1 and changed the old permalink line:

    to the recommended one:

    Although im getting 404 error…
    Once, i changed the permalink of a wp1.5 some time ago and it had released a .htaccess to upload.
    I didnt get in this trouble at that time.
    And WP 2.1 doesn’t show me the changed one.
    Anyone got a .htaccess for this permalink config: /%category%/postname%/ ???

  24. Hi,

    A question. What happens if you have 2 posts with in the same category and same name.

    Just curious. Does wordpress automatically make the title different?

    Thanks in advance.

  25. Great plugin! Now I can finally get rid of the /archives/ in my permalinks. How does the plugin track which is the old permalink structure?

  26. The problem most are probably having is that in his example /%category%/postname%/ should look like this /%category%/%postname%/ (that extra % infront of postname really matters)

  27. For all who have problem with Permalinks. You should go to Option->Permalinks and change to: /index.php/%category%/%postname%/ and it will works

  28. Dean, I have a problem. I have activate the plugin and did the necessary permalink change but it returns me a 404 error even on the index.php

    What I see here is that there are several who have problem too and they all have no idea what is the default format that wordpress permalink is set to.

    For those of you who did a successful permalink migration, don’t just comment here to say thanks to Dean but please provide assistance to us on WHAT DID YOU GUYS SET as the old permalink.

    Many thanks, especially to Dean, for creating a better redirection tool.

  29. So to further provide more information.. I set my current Old Permalink Structure to: /%post_id%
    Assuming that it represents the default syntax.

    Now I have set the permalink to /%category%/%postname%/

    But as you can see in my blog, it doesn’t show up even the index page at all.

  30. Ok sorry for entry 108 – 110. I have resolve the issue.
    So for those who encounter problem, please let me know and I can help you on the reason why it didn’t work for me the first time around.

  31. Number#1:
    In order for the permalinks plugin to work, both the wordpress address and the blog address HAVE TO BE THE SAME.

    I notice this mistake for my settings hence the problem arose.

    You guys can find this setting under Options->General.

    Before the plugin is activated, make sure you have set the customised permalink in the permalinks option.

    Default permalink set by WordPress is /%post_id%
    This should be your setting in the permalink migration option

  32. **IMPORTANT: Read This WHOLE Post BEFORE Changing Permalinks Structure–VERY IMPORTANT DETAILS AT THE END**

    Dean’s Plugin works GREAT but there is an issue that you need to be aware of before you go and change your Permalink Structure. If you aren’t able to access your .htaccess files on your server DON’T CHANGE YOUR PERMALINK STRUCTURE unless you want your Post Feed links to stop working.

    *First things First!*
    Install and activate this plugin BEFORE changing your permalinks structure.

    If you have already changed them, do the following next (otherwise go to Step 1):

    Go to Options>Permalinks and change your permalinks BACK to the ORIGINAL tag (i.e. /%year%/%monthnum%/%day%/%postname%/ ) or whatever it was BEFORE you changed. Make sure you hit Update when you have completed entering the change.

    Then do the following:

    Step 1:

    Go to Options>Permalinks and go down to the Custom Structure Field and Copy the Structure (this may not work in all versions of WP so you may have to go the the WP Codex to learn what the tags are and how to arrange them).

    Step 2:

    Go to Options>PermalinksMigration and Paste or enter the old/existing Permalinks Structure tags in the Old Permalinks Structure Field. Hit the Update options button to make the change.

    Step 3:

    Go to Options>Permalinks and enter the new Permalinks Structure you desire and hit the Update Permalinks Structure to save the changes.

    You have now made all the necessary changes to ensure that your Permalinks for POSTS will work.

    BUT! Your feed URLS will NOT work! As pointed out by Enblogopedia (in comment 124). He posted a fix on his site but I felt it should be posted here.

    In order to get your Feed URLS to work you will need to make a change to the WordPress .htaccess file. In order to do this you will need access to .htaccess on your server. Again, If you aren’t able to access your .htaccess files on your server DO NOT CHANGE YOUR PERMALINKS STRUCTURE or you will break all your Post Feed links.

    To ensure that your feed links will work do the following:

    Open the .htaccess file in your WordPress root folder and above the Word Press rules you need to enter a ReWrite Rule that will correct your Feed URL. As an example if your original Permalink Structure was /%year%/%monthnum%/%day%/%postname%/ you can use the following rule:

    RewriteRule ^[0-9]{4}/[0-9]{2}/[0-9]{2}/([^/]+/feed/?.*) $1 [R=301,L]

    If you have never seen Regular Expressions this will be gibberish to you and you should get some help. You can try the WordPress Forums or SitePoints Apache Forums.

    Dean, Hopefully you can update your wonderful plugin to address this issue. I don’t think that it would be a huge deal.

    Hope this helps someone.

    Cheers and all the best,


  33. Great plugin! Nice coding!

    Check out: Force Apache to output any HTTP Status Code with ErrorDocument

    I setup an automated system to view all 57 Apache Response codes and ErrorDocuments, saving the headers and returned content for future reference. Use this page as a reference when designing scripts that use headers. Ex: 404 Not Found, 200 OK, 304 Not-Modified, 506 Service Temporarily Unavailable, etc.

    When a Status code is encountered, Apache serves the header and the ErrorDocument for the error code. So if you can see any Header and ErrorDocument by causing that error on Apache.

    For instance, if you request a file that doesn’t exist, a 404 Not Found is issued and the corresponding ErrorDocument is served with the 404 Not Found Header. So we can see what Apache 404 Errors and Response Codes look like, but how do we cause errors for the 56 other Apache Response Codes?

  34. Pingback: Connected Internet
  35. I recently upgraded a number of blogs to WP 2.1.2 and, on one of them, I changed the permalink structure from:




    I installed and configured the Permalinks Migration plugin. It appears to work in redirecting links to *individual* entries but I am find that it does not work for *monthly archives*.

    The old permalink for a monthly archive was:

    and with new permalink structure this is:

    I gather that “date” is considered the “category” for a monthy archive.

    If someone has a workaround or fix for this, it would be much appreciated.



  36. Pingback: Nicky's blog ℡
  37. What if I have two old permalinks that I want to be redirected to my latest permalink? Is that possible?

  38. Oh, by the way, why is that the feeds don’t get redirected (eg: /2007/01/02/post-title/feed/ don’t get redirected to /2007/category/post-title/feed/)?

  39. I added this to my .htaccess file because there were visits coming in for the per month links that were not being translated.

    RedirectMatch 301 /blog/archives/date/(.*) /blog/$1

  40. When setting up the plugin and setting old permalink structure, what is the default WordPress setting? I’m not sure what to enter here.

    Any help is appreciated.

  41. hi there, my trackbacks does not work. just would like to say thank you for this great plugin, appears on my “must-have” list ;-)


  42. Pingback: SEO para Wordpress
  43. i have some posts that are of one permalink structure and some of another because i changed sorta midway through my blogging. is this plugin going to be able to migrate everything to my new permalink structure if i give it the old permalink style and then give it the new style?

  44. Hi.

    Man, it seems to be a very good plugin. When I visit my permlinks, the content is ok, it shows everything right after the permlink changes.

    But the URL at the browser still the old.

    Is it normal?


  45. Hi man.

    My old blog was under the “/blog” directory and my old permlink was “/index.php/%year%/%monthnum%/%day%/%postname%/” (running over the IIS, so I need the index.php :( )

    Now I’ve moved the blog to the root dir /.

    I’ve tryied to set the plugin old permlink to /blog/index.php/%year%/%monthnum%/%day%/%postname%/ and both to /index.php/%year%/%monthnum%/%day%/%postname%/ but did’t work.

    DO you have any tip to solve my problem?

    Thanks :)

  46. Ops, I’ve done a mistake.

    “I’ve tryied to set the plugin old permlink to /blog/index.php/%year%/%monthnum%/%day%/%postname%/ and both to /index.php/%year%/%monthnum%/%day%/%postname%/ but did’t work.”


    “I’ve tryied to set the plugin old permlink to /blog/index.php/%year%/%monthnum%/%day%/%postname%/ and ALSO to /index.php/%year%/%monthnum%/%day%/%postname%/ but did’t work.”

  47. Pingback: Plugins.Net.Ru
  48. This is cool … this plugin has sorted my problem … i changed my permalink and most of my blog reader had problem when they search in… cool man :) Thanks

  49. Dean,
    Successfully and without sweating installed the WP Permalink Plugin on Win 2k, IIS5.
    Works great and we are much obliged.
    Great work!

  50. I recently changed my permalink structure and your plugin helped alot to keep my search engine listings. 1 problem though. After installing this plugin, www redirect plugin doesn’t work anymore. How can I have them both work?

  51. Hi,
    is this plugin for before-changing permalink structure, or works too for fixing problems “after” permalink structure has been changed?
    Thank you.

  52. Hi,
    And do you have any idea for that if directory name’s been changed, such as /aaa/wp-admin/*** to /bbb/wp-admin/***,

    on the search engine, such as Google or MSN, the posts with old directory named rank on top (not accesed now, cause directory name’s been changed), the new address-posts rank at the very very bottom, can someone delete old reaserch result?

    This plugin doesn’t work for that?


    Thanks for the good plugin.

  53. Hi, this great little plugin recently stopped working for me, probably after I upgraded from 2.1.1 to 2.2. Old permalinks (/item/%post_id%) now result in a 404.

  54. Dean, I need your help. I previously used to have “” as my permalink structure. But now, I changed it to “”. So, what do I type as my “old structure” in the plugin options ? %postid% ? Please help me.

  55. Great plugin but not working in all cases.


    archives/%year%/%monthnum%/%day%/%postname%/ to /%category%/%postname%/

    It’s ok, it works. But, it won’t work with links to categories that wordpress generate at same time too. (archives/%category%/%year%/%monthnum%/%day%/%postname%/)

  56. I followed those instructions to the letter when trying to switch from a /%postname%/ permalink setup back to the standard (forced to switch to IIS and don’t have access to necessary changes to keep the permalinks), but when I click on any of the links in google for my site, it shows in the nav bar that I’m on the requested page, but it just shows my index page. Any ideas?

  57. In the hours of distress and miser,the eyes of every mortal man turn to friendship;in the hour of gladness and conviviality ,what is our want?It is friendship.When the heart overflows with gratitude,or with any other sweet and sarced sentiment,what is the world to which it would give utterance?a friend.

  58. This plugin does not work for everyone. DEAN does not reply to any help requests. I’ve read every single comment (all 16 pages) and I didn’t see a single reply from DEAN explaining or helping with non working instances. So use this at your own risk, you will get almost no help.

  59. Hi Dean – First of all thanks for a great plugin! This is such a time saver. However there is one problem I experienced with the plugin and it may be a special case. I have a blog with URL address and another one (translation) which resides at
    I uploaded the plugin to both sites, activated in their respective wordpress panels and updated .htaccess for each. However, when one site functions properly the other does not (whichever is at the bottom of .htaccess). I think the top update overwrites the other. Do you think there is a way to solve this?
    Many thanks in advance,

  60. Will this work if I’m changing my whole domain? So, I’d actually keep my permalink structure in place, just change the domain name from to…something else.. Will this plugin work for me? Is there anything special I’d need to do?

  61. Do I need this if I am migrating from defualt ( » to some thing else?

    I have changed my permalink from default to “Date and name based” and after two days I lost all my ranking in google search! even my first page ( which did not change at all.

    I use “Google Webmaster Tools” to submit my sitemap and got a warning there saying “too many redirect”

    I assume there is no way to make default permalink redirecting to new one and also having 301 on default permalink. Is that correct?

  62. Greetings from,Inc
    Hope all is well at your end.

    This is regarding the mail that I had sent you, containing the details of our Reseller program.

    I would simply like to take a couple of minutes to follow up on the same. In fact, I am looking forward to hearing from your side so that we can take this ahead. I would also like to add here that we constantly have promotions running for all our Resellers. Some of the currently running promotions are:
    .CN Domain(first year: $0.13) —–Surprise Price
    .SH/WS/AC/IO $58.21
    -TM $ 148.77
    .US $15.52
    .HK $23.29 (first year: $11.77)
    .COM $6.6
    .INFO $7.24
    .NAME $8.15
    .WS $13.32
    .TW $28.46
    .TV $38.29
    .CC $33.38-
    .MOBI $14.62
    -TRAVEL $167.66

    Any enquires,Pls feel free to contact us directly as below:

    MSN: info{at}todaynic{dot}com
    Email: sharon{at}now{dot}net{dot}cn

    Once you become our reseller, we will offer the free interface mode API(Application Program Interface Mode) and 40% discount of our products to you. Integrate a real-time, domain name registration process with your site by using our powerful SCP API (Support PHP ASP.NET and JAVA). Perfect solution for high-volume resellers and satisfactory service(7*24 hours).

    Detail information, pls don’t hesitate to log on our website:3w{dot}todaynic{dot}
    Com, Look forward to get your reply in your earliest convenience! Best wishes for you!^○^

  63. …and it worked like a charm! A thing to notice, in the point 2 of “Usage” you missed a %! :-) /%category%/postname%/ instead of /%category%/%postname%/ Thanks for this!

  64. Pingback:
  65. Hi,
    nice plugin! Is it possible to use this, to get old permalinks like: index.php?title=this_entry_here&more=1&c=1&tb=1&pb=1 (was a b2evolution link) to work with new ones like:



  66. I’ve used this on 5 blogs now, and love it –

    However, on a DEFAULT install, it’s not pre-filled or obvious what to put in as the old permalink?

  67. hi my blog is installed at my domain/blog/
    However, on a DEFAULT install, it’s not pre-filled or obvious what to put in as the old permalink?

    What would be by default my old permalink?

  68. I used /%category%/%postname%/ as permalinks structure. Recently I noticed that it wasn’t working properly, so I decided to use the plugin. Now the permalinks structure is /year/month/dat/post-title.html. Unfortunately, the plugin does not redirect /%category%/%postname%/ to /%year%/%monthnum%/%day%/%postname%.html

  69. Wow, thanks Dean! I think I did it right (took me about an hour to figure out how to make and upload the .htaccess file and then how to word the syntax for the new permalink structure). I think for those that are struggling, you need to go to the WordPress Codex since it’s not really up to Dean to teach how to do those things when all the info you need is right there in the Codex. Yes, takes awhile, but no pain no gain!

  70. My wordpress url is now with default page number . I m tring to change but after changing., The post url showing my hosts 404 page . – THis page is not found i n our server
    what can i do

  71. I have the exact same problem as Mushfiq. I used the plugin to change from the default structure to a new one, but I get 404 File not Found.

    What can I do?

  72. Hello,
    I’ve run the plugin. All is ok regarding the change but I have several lines on the top of my blog like this one “Compilation failed: nothing to repeat at offset” with fonction preg_match. I had to return to the olf configuration to resolve the issue.
    Do you have an idea?
    Thanks a lot

  73. I am going to change my permalinks to /%year%/%monthnum%/%postname%.html
    But when I activated your plugin, the permalinks became 404-not-found.
    Can you fix it?

  74. Thanks for your plugin. I tried a lot of plugins to change my permalinks, but they didn’t work with my Tiga-06 theme.
    Your plugin is the only one that works with this theme, as you can see at (a french web site). Thanks again.

  75. After 21 pages of comments you’d think there’d be at lest some condensed help or troubleshooting on the page. That would be cool. It isn’t working for me but i am scouring the comments to see if i can get some clarity. peace.

  76. I’m using WP 2.3, just installed the Migration plugin and activated it. In the interface, only “Old Permalink Structure” + field shows. There’s no field to enter the new permalink structure. I’m also using All in One SEO & the Redirection plugin (to handle some oddball redirects): does anyone know if there are any conflicts?

  77. Tried and failed – can’t migrate to from my default /?=number I stupidly overlooked on set up!

    I keep getting 400 requests……….i’ve tried all the tips and nothing! doesn’t bloody work……..using wordpress 2.0

    Any ideas why?

  78. Wow..super thanks to this powerful wordpress plugin. Just migrated to my new permalink and with the help of this plugin, everything from my old permalink to new permalink is working fine.

  79. This is a good place to learn English from others.

    Happy to announce
    To supply more beneficial service to our customers, we will offer the bonus of 12 hours’ free power leveling for any custom orders. Grasp the chance and take a try! Enjoy more fun from WoW, from our custom orders

  80. if i was using te “defaul” permalink style, what must i put here ? panel->options->PermalinksMigration i had put



    i cant find, who can help me ?

    pd: im from uruguay, sorry if i wrote some word wrong :$

  81. are there any instructions on the PRECISE code to enter – i want to be carefuk before doing this


  82. Hello,

    Thanks for the plug-in; however, it’s not working for me…

    Is it supposed to write 301 redirects into an .htaccess file, or does it do something with the backend database?

    Do I need to make any permission changes on a script, an .htaccess file, etc?

    Are there any known issues with using the plugin on version 2.3.1 of WordPress? If so, are there any work-arounds I need to implement?

    Thanks for any help you can give — and I understand what “free” means and am grateful for any help you might be able to provide.

    And you have my permission to contact me at the email address I provided if you so desire.


  83. I wonder for how long time I need keep that plugin activated? Month? Forever? I think that after I updated permalinks, site loads much slower now…

    Any help would be just great :)

  84. Hi Dean,

    I tried the plugin and when I directed it to /%category%/%postname%/, it doesn’t work. However, when I add in the /index.php/%category%/%postname%/ as the permalinks, then it works. May I know how to get rid of the index.php because it looks unprofessional.

  85. Thanks for the plugin Dean works like a charm. I originally had some problems with it but here are the steps i took to make sure it worked. mostly for the benefit of the people who complain that it doesn’t work. I’m on 2.3.1 and I even use Podpress 8.7 for my podcast, stats and everything work now as they always have.

    1.) leave Old permalink structure intact on WP blog
    2.) Upload, activate and set plugin to match old permalink structure.
    ( verify that you don’t have a trailing slash on one setting and not the other as was my problem)
    3.) then and only then change your PL structure to the new and improved.

    My show went from /archives/%post_id% to /%category%/%postname%-%post_id%/
    All is right with the world now. Many thanks. My orginal problem was due to inputting /archives/%post_id%/ instead of /archives/%post_id% makes a world of difference. Details people, Details…

    CaffiNation Paul
    The CaffiNation Podcast

  86. Thx. Plugin is great, but make sure to fix this typo in your instructions:
    (personally I recommend /%category%/postname%/

    There is an “%” missing…which might confuse people, that copy the structure code ;-)

  87. Hi Dean,

    If I start a blog from scratch and have my permlinks set to %post title% from my very first post, will I still need you plugin or is it only if I am wanting to change the format of an existing blog?

  88. Hello there … great plugin. I want to say something though …

    While trying to apply what ‘Usage’ tells me, I encountered an issue:

    2. goto admin panel->options->Permalinks.change the new permalink structure to what you want. (personally I recommend /%category%/postname%/)

    Actually the recommended structure should look like:


    Now it’s good :)

    PS: I am a /%category%/%postname%.html user :)

  89. I think this would have all worked perfectly and whatnot, except that my diggs don’t show on pages that have been dugg, they’ve all been reset back to zero. I wonder if their crawler will ever reset the page or will learn about the redirect or something…

  90. Hi Dean,
    Great plugin, just what I was looking for, however I used the default permalink in wordpress ****. How do I input that into old permalink structure??

  91. provides 10% discount for all packages.
    You will get 10% commission generated from your Referrals’ power leveling orders
    and 5% commission for gold order if succeed in recommending our website to
    your friends or acquaintances.
    To supply more beneficial service to our customers, we will offer the bonus
    of 12 hours’ free power leveling for any custom orders.

    more chance, more surprise.
    Please Grasp the chance!

  92. I am not sure but I am probably doing something wrong. I had the default /index.php/%category%/%postname%/ option enabled. Then I used the permalinks and followed the instructions. But apparently I am ending up with error, 404.

    All my links are shown as /index.php/category/psp/ (Here PSP is the category). Not sure how to shake of the index.php. Is it something to do with the .htaccess

  93. Hi there,

    Is it me or is your plugin not compatible with the newest version of WordPress (2.3.2.)? I’ve had excellent luck with plenty of installs… but not on this latest install with the newest version of WordPress.

    Let me know. Thanks!

  94. After having sweat all over my forehead finally I made it after 2 hours trial and error. THE MOST IMPORTANT is .htaccess should be writeable(i set permission 777). Because of the dot in front of the file (.htaccess) so it is invisible in file manager. I change the permission via ftp client. And it work!

  95. GP advised painkillers for the headache with just a tiny amount of caffine eg; Solphadine or Anadin plus, we persivered, my Son now has milk shakes, pure orange, and lots of water, it will take a while but it will be ok in the end, please dont end up like my Son, these drinks ended up making his life a misery, he couldnt live without it, but he has done and is now very well, good luck hope all goes ok.

  96. I have just add your plugin and I have good titles, now. I do have a problem with the rss and rss comment links in the menu not working now and the rss image link in the footer.

    I get this error:


    You don’t have permission to access /blog/feed/ on this server.

    I am running WordPress 2.33 and I am not sure what to look for to fix this issue. The .htaccess file has the following:

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /blog/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /blog/index.php [L]

    # END WordPress

    If anybody has a solution, please respond…..


  97. is the type of thing that this plugin does required if one is changing from the Default WordPress (i.e. ?p=%post_id%) permalink to a custom permalink? I am currently using WordPress 2.3.2 and have just changed from the Default permalink structure to /%category%/postname%/ and it seems to be working just fine without having activated the plugin

  98. ] WordPress Permalinks Migration Plugin Affected Version: 1.0 and other versions. Vendor’s URL: WordPress Permalinks Migration Plugin Bug Type: Cross Site Scripting Risk Level: […]

  99. I cant believe this is the only plugin I need, for me to have some peace of mine about permalink. Now I can submit again my blog to ad netowrks that required chronological permalink. Thanks dean, Now my next stop is to find your paypal.

  100. provides professional leveling and cheap WOW gold.
    1.There are some special orders at, with a low price(30%-50% discount) and a rich package.
    2.12 hours’ free leveling is offered for any custom order.
    3.For WOW gold, we guarantee fast & complete delivery of your Gold. There will be 50-100 gold bonus waiting for your new order!!!

  101. First thanx for giving me right thing I came looking for! :-)

    Now I have a quick question
    Suppose I use new permalink structure
    >>>> /%category%/%postname%/

    Now if I file a post in two categories, ex. a cross platform software in windows and linux category
    then will it create two new permalink like
    >> /windows/kool-software
    >> /linux/kool-software

    if yes, then it will be termed as bad SEO
    if no, then which link will survive

    or is there any other options???

    A worst case could be in TWO-links scenario…
    Bill will link to /windows/kool-software from his blog while
    Linus will link to /linux/kool-software.
    If that software works on mac then steve will link to /mac/kool-software

    How plugin handles these cases?
    Sorry for asking this instead of trying this first but I do have many posts in multiple categories so this could turn out to be nightmare for me… :-(

  102. Whenever I try to submit the page with the old permalinks structure I get the following error =(

    Fatal error: Cannot redeclare dean_pm_the_posts() (previously declared in D:\Inetpub\Charlie\wp-content\plugins\deans_permalinks_migration.php:46) in D:\Inetpub\Charlie\wp-content\plugins\deans_permalinks_migration.php on line 46

  103. Getting this error:

    Whenever I try to submit the page with the old permalinks structure I get the following error =(

    Fatal error: Cannot redeclare dean_pm_the_posts() (previously declared in D:\Inetpub\Charlie\wp-content\plugins\deans_permalinks_migration.php:46) in D:\Inetpub\Charlie\wp-content\plugins\deans_permalinks_migration.php on line 46

  104. P.S. I’m running WordPress 2.5, on windows server 2003, IIS 6.0.

    And i can’t get this to work.



  105. I have a blog on the root directory and now I would like to move all the posts to sub-directory like ‘/blog’. Can this plugin help me to redirect?

  106. Hi,

    This is nice plugin, though you don’t require, as with WordPress 2.3 onwards, 301 redirect is built-in. Just change your desired permalink and WordPress handles it.


  107. Penis enlargement products, American Most Trustworthy Natural herbal productz store for penis enlargement,Which increase your size 4-6 inches, Double the size Double the fun.(Yes No Pain ALL Gain) And more productslike weight loss, male enhancement, skin care, acne solutions, breast enlargement, hairLoss for men and women , multi Vitamin for men and women, optimum Diabetics, eazol Pain Relief , stretch mark prevention, revitol skin brightener, revitol hair removal cream, revitol anti-aging solution.

  108. I am glad to post my views and points in this blog, but I must say that webmaster of this blog has done a very great job to make his blog more informative and more discussable but unfortunately everything is same here that more than 80% in this and other blogs post their comments for making spam!!!, so i will really all this spam links to google band tool, because webmaster makes blogs for making discuss and for sloving each other problems. thanks

  109. Dean,

    First off, thanks for this plugin…

    Second, I need help figuring out some things…Here are the problems I’m having:
    On an IIS 6 Server:

    Old Permalink Structure: /archives/%post_id%
    New Permalink Structure: /%category%/%postname%/

    I have rewrite rules specified in isapi filter like so:
    RewriteRule ^/blog/(?!index\.php)(?!wp-)(?!.*\..*)(.*)$ /blog/index.php/$1
    (Seem to be workign fine…)

    /blog/archives/ ==> /blog// (works file with plugin)

    /blog/archives/category/ ==>
    (does not work – should get 301 and redirect to /blog/category/

    /blog/archives/date/2007/01 ==> (does not work – should get 301 and redirect to /blog/2007/01)
    (I was able to fix this with a rewrite rule that removes “archives/date”, but this does not get me the 301 permanent redirect)

    Any ideas?

  110. Pingback: Permalinks!
  111. UUUfa, salvou minha vida, to precisando e tava com receito de perder o contato com o Sr. Google!
    muito Obrigado!

  112. Works great. I tested it out on all kinds of pages from Digg to StumbleUpon and it is directing them all to the right places. Thanks again!

  113. This worked flawlessly for me. It took a few minutes for the redirects to kick in but it works. Thank you!

    For the default wordpress setup, you might try entering /?p=%post_id% for the old structure.

  114. Unbelievable !!!

    Thank you, thank you, thank you, thank you, thank you, thank you, thank you, thank you, thank you 1000 times !!!

  115. Can this plugin be used when the permalinks change because you moved the wordpress directory rather than just updated the permalinks? i.e. the wordpress script is on and then I moved the index to the root to make the permalinks shorter

  116. I’ve installed your plugin recently, but i get this when i opened my site (wahyureza dot com) Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 1 in /home/a7262550/public_html/wp-includes/classes.php on line 99 and also for line 100. is there any suggestion? what do i have to do? coz after installing it i haven’t seen any changes. i search on google my term which i used to be search on the net before, but the SERP doesn’t show my site appropriately, even it was disappear (mean my site disappear from listing). any suggestion please?
    i do changed my previous permalink /p?=%post_id% to /%category%/%postname%/. thx. please help me.

  117. Pingback: 睡觉的眼皮
  118. Hi. Installed the plugin, activated it, clicked update on the old permalink structure (it defaulted correctly), changed the options->permalink to the new structure. I got 404 errors when I clicked on a link. Is there something I have to do with the .htaccess file?

  119. Permalinks Migration PluginWith this plugin, you can safely change your permalink structure without breaking the old links to your website

  120. Hi,

    I’ve just tried this after first installing IIS Mod-rewrite so that I can get rid of the index.php inside the permalinks structure.

    However, having followed the installation instructions, setting up the permalinksmigration settings and the permalinks settings when I go to one of the old URLs the correct page is being displayed but index.php is still inside the URL in the address bar. Any ideas?

  121. I know this is a stupid question but I’m having a problem setting the “old permanlink structure of your site.” I’m using the default configuration right now.. so what would I enter there?

  122. I already changed my permalinks settings about a week ago. Will this plugin work to redirect my old links to my new ones already in existence, or is it too late once i have already made the change?

  123. Pingback: Ruhani Rabin
  124. Pingback:
  125. Nach einem langen Abend eigenem Testen mit der htaccess bin ich hier endlich auf die entscheidende Hilfe gestoßen, die in Handumdrehen die Lösung brachte. Danke für das Plugin im letzten Post.

  126. Hey fellow Dean, your plugin works great on my website. I changed /%post_id% to the /%category%/%postname%/ and it worked great. Many thanks for a superb plugin,

    To all those who were using the standard method of posting ie the top one in the permalink options, use /%post_id% in Deans plugins settings for the old structure.

  127. hello,

    installed the plugin. did not work.

    I had to add /index.php/%category%/%postname%/ in order to get it to work. Is there a way to have it working without the index.php in front? looks tacky.

    Im sure this is my problem:
    when i check, I do not see a .htaccess file anywhere on my site. Does anyone have a fix or the sample htaccess file I can use??

    thanks in advanced

  128. hello,

    installed the plugin. did not work.

    I had to add /index.php/%category%/%postname%/ in order to get it to work. Is there a way to have it working without the index.php in front? looks tacky.

    Im sure this is my problem:
    when i check, I do not see a .htaccess file anywhere on my site. Does anyone have a fix or the sample htaccess file I can use??

    thanks in advanced

  129. Me too having the same problem……..

    old structure : /%post_id%

    Custom structure :/index.php/%category%/%postname%/…………works !

    How to get rid of the index.php ?

    Anyone ………please guide

  130. Same here….wonderful plug-in but clearing the index.php would make it well done

    “Custom structure :/index.php/%category%/%postname%/…………works !

    How to get rid of the index.php ?”

  131. My original permalink was :

    I migrated it to didnt worked

    Then i used /index.php/%category%/%postname%/…………worked

    How do i remove that index.php.

    Also How do i migrate my categories ?

    changing from /%cat_id%/ to /%category%/ in the category base repeats the categories in url

    example :

    how to fix that ?

    Plz plz plz someone help

  132. Where are these wonderful people come along to make life simple?

    I am so thankful to Mr. Dean for his plug in. I had 60 posts scattered in the old format and we were under great pressure to correct this mismanagement which was started by me ….but today it looks fine.

    Hope the search engines do not give me a riot…..

  133. i cant seem to get this to work

    my old format was the default:




    what exactly do i put in the “old permalink structure” box to get this to work

    im trying to switch to:

    /%category%%postname% type thing, i can use index if i have to also

    is there a time delay on this kicking in or something im not aware of?

  134. Hi Folks,

    I’ve been running on WP for a while now. I’m trying to get the wp-supercache plugin to work with my blog as I’m getting lots of traffic and this seems to be the way to go.

    EDIT: Forgot to say I’m on WP 2.5.1.

    In doing this, I noted that the plugin likes pretty permalinks – so I try to change my permalinks to this structure:


    And when I do – my cpu usage goes from about 7% to 99.9% and stays there.

    If I put it back to default (where a post looks like this: it drops right back down to normal.

    Any ideas?

  135. Hi,

    I have the same problem like slappywhyte. For “old permalink Structure” i typed /%postid%. But this is not working. Could someody help us?


  136. I had the same problem as you guys! But I figured it out! Go to the Site Admin and go to the regular “permalinks” link and set the radio button on “custome structure” then enter what you have entered in the “permalinksmigration” box. Let me know if this works for you!

  137. hahahahaahahahahahaaaaaaahhhhhhhhaahahahahahahahahahahahahahahahahahahahahahahahahaha u freakin nerdy weirdos.. i bet all ya guyz do iz sit in your moms basement thinkin about how fat ya iz GEEKS!!!!@!@!@!@!@!@!@@!!!

    Nunya B33zy =)))))

  138. when i tried using the plugin and change my permalinks structure, i got this error:

    “Warning: Cannot modify header information – headers already sent by…”

    anybody encountered this?

    btw, i’m trying to change from “/?p=123” to “/year/month/postname” and i just want to verify with you guys if i did the right thing… i put “/?p=%post_id%” in the old permalink structure, is that correct? i’m using WP2.6.1


  139. fantastic plugin. this was really really helpful. awesome and really thank you for the hard work. just what we needed.

  140. is THE best place to buy World of Warcraft gold without a doubt.Combining quality service from the USA, with highly competitive pricing and a guarantee that your WoW gold will be delivered 100% safely, there is simply no other company like Gmest.

    Gmest are the safe and cheap wow level site.Here are our promise of our wow leveling service:
    1. level up by our two hands, no bots for ever.
    2. keep all drops for you during the level process.
    3. banned rate can be controled with 2%.
    4. we will buy new CDkey for you and re-level for you for free if your account banned.
    5. best protection of your account.
    6. Email notification when start and done your order.
    7. powerleveling report update every 24 hours.
    If you have any questions, plz feel free to contact with us by livechat or give us e-mail to Tks

    Welcome to :
    Add new game :Warhammer Online Gold and Powerleveling

  141. Hello, my website is I used your plugin, but i still found some errors about the URLs. That’s the warning in Goole webmaster tool:
    When we tested a sample of the URLs from your Sitemap, we found that some URLs were not accessible to Googlebot because they contained too many redirects. Please change the URLs in your Sitemap that redirect and replace them with the destination URL (the redirect target). All valid URLs will still be submitted.
    Can you help me to solve the problem?

  142. Hi … i tried your plugin and changing permalinks to redirect to /%postname%/ but it doesnt seems to be working. I am still getting an Error 404.

    My old permalinks structure is as follow.

    I would really appreciate it if you could help me out :)


  143. That is really a very cool plugin. I started the blog without having any idea about SEO,permalinks and was afraid to change the permalinks structure. But now this plugin has made it dead simple.

    Thanks for the plugin.

  144. Great, super, awesome! Thats what i’ve been looking for. It works like charm! Great plugin. Upff, it took me awhile to change from old permalinks to new ones. Now everything is working fine and not many visitors lost thanks to your plugin :)

  145. That is really a very cool plugin. I started the blog without having any idea about SEO,permalinks and was afraid to change the permalinks structure. But now this plugin has made it dead simple.

    Thanks for the plugin.

  146. Pingback: Seven | pamibe
  147. I have been using this plugin for a long time, but since I upgraded to WP2.7, I’ve had a ton of 404 errors show up in my Google Webmaster account that are my old permalinks structure, so it looks like it is not working with 2.7.

  148. I followed the migration steps in an attempt to move my blog over to nicer links.

    And now no links work, any help would be appreciated :).

  149. Is it possible to install this plug-in twice in order to redirect two older permalink tpyes. I am currently using my Hoster to redirect a number of older links that start with /blog/ from before when the site was hosted elseware. That worked fine.

    But now if I use this plug-in the newer links redirect fine, but the older /blog/ links slip through for a 404 error which is understandable.

    I am wondering if I can load it twice with /blog/ sdded as the second old permalink

  150. Hi Dean, not sure if you have time to deal with queries, but my site is quite old and I have managed to change my permalink more than twice, so the question is can it do more than one 301 direct?

  151. I just uploaded the 1.1x version of this plugin and then changed my permalink settings (from category/postname to /year/day/month/postname) in WordPress 2.7. It did not redirect and now I can’t see any of my posts! Can someone help me please?

  152. gr8 plugin…
    i was thinkng to redirect old links to my new changed structure…dis plugins work perfectaLLY.

    but i hv one problem !

    i m using top level categories.
    i.e. without category base
    m using dis structure

    so m unable to change my permalinks to

    by changing link structure while i open any category from sidebar dat opens a single post from that categ..[:(]

    Is there any solution for such situation?
    If u can plz make such changes in the new version of plugin
    thanks a lot…

  153. Hi first thanks for this plugin!

    I changed to category/postname
    but know the monthlay archives have the URI
    date/2008/04 before they have 2008/04
    your plugin doesn’t redirect to the new /date/ permalink – error 404

    what can I do to solve this problem?

    kindly regards

  154. 2 questions: at Permalinks Migration, what do I put in for the “old” permalink structure? What Typepad uses or the new WordPress one?

    It’s not working, and I’m wondering if the fact that I haven’t deleted the old Typepad weblog yet is the reason why?

  155. Not sure why it is not working, but the post slugs are showing the new permalink structure, but still get a 404 error when you select any post. So I guess the redirect function is not working with 2.7.

    & Yes, my .htaccess file is set to 666.

  156. I recently switched my permalink structure in wordpress 2.7 and lost all my search engine links. I’m so glad I found this plugin. I installed it on wp 2.7 and it worked fine for me. Took me 5mins in total to install and switch the structure to the new. Thank you so much this saved me!

  157. Tried the plugins and followed directions using WP2.7 but for some reason it did not work. New permalink URLs display 404 errors, it seems there is a missing step that prevents the permalink changes to be applied to URLs (old and new, also tried to create a new post and it published as 404!). htaccess was on 777, but it seems nothing changed in it regardless.

    If it worked, such a plugin would be wonderful. Keep up the efforts, it can become popular.

  158. Very nice plugin.

    But to migrate my permalink I still need a way of choosing which category will be used for each post. I tried scategory but it is bugged and returning 404 error for pages.

    Do you know any plugin that does the trick?

  159. kara muito obrigado pelo post e estou muito agradecido mesmo.

    muito obrigado pela ajuda vou lhe dar um conta premium no easysshare (obs é verdade)

    meu nome é diogo vieira

    sou administrador

    pra pegar sua conta so entra em contato com

    muito obrigado pela ajuda !!!!

  160. This plug in failed. All of my stories got 404 errors. Fortunately, I changed the permalink structure back to the old setting and the links worked again. Disappointing.

  161. Hi Dean,

    The Plugin works great except all the NEW URL’s don’t work anymore. All my posts that have been posted as /%category%/%postname%/ don’t work anymore basically. Everything that is /%postname%/ is fine. Is there anyway I can correct this? Thank you!

  162. Hi Dean,

    I have activated the Permalinks migration plugin. Is that it?

    Is there any settings i have to adjust to? or that the urls not found in my blog when the search engines crawl will now be found?

    Pretty confusing cause I have about 348 not found in my google report.


  163. Plugin works good for old posts with diferent permliks,


    can you please help?


  164. This took me about an hour, and I thought it was broken for WordPress 2.7 based on all of the comments on this site. If you are a total newbie like me and you want to use this to change your permalinks from the Default structure, you need to put the old permalink structure as /%post_id%/ in the Settings/PermalinksMigration tab.

    It is especially confusing because Dean refers to the old structure as /?p=#/ in the above post. Anyway, if you put the old structure as /%post_id%/ it works just fine when you convert over to /%postname%/ or something else.

    You should absolutely mention that the Default structure is /%post-id%/ in the help text if you create a new version.

  165. Thank you for this wonderful plugin. It has saved me quite a bit of time in rewriting permalink structures, and my site (thecoffeedesk) will hopefully now have a better pagerank after the migration made possible with your plugin. Thanks again.

  166. HI ,I have updated my blog using your advice. It is cool ,immediately the permalings started working with the old address. Wonderful . Good work. Cheers.

  167. May I suggest you put some more notes in the plugin explanation after it has been installed? For instance, I believe my “old structure” would be /?p=N I have to consider that correct. Does the “N” need to be there?

  168. I’ve just updated to use this plugin and all I get are errors across the top of each page: Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 1 in /home/life/public_html/wp-includes/classes.php on line 104

    The links work to redirect you on my server (no luck locally yet), but my css of my plug-in is all messed up.

    I don’t have many posts and I’m thinking of deleting the blog and starting fresh… Is there some way to fix this mess?

  169. There seems to be an issue with the plugin causing double links. I am looking at statpress in the back office and its doubling all the links. the web spiders are reading them also. it does not seem to be cause a problem with redirects but throwing my stats way off. any solution?

  170. This works great,
    I wanted to change my permalinks, but was worried about links,
    but I just changed my permalinks, and all the old links redirect to the new pages.
    Thank You a ton

  171. Fantastic PLUGIN – totally effortless installation and activation but for anyone having trouble try this;

    1.upload plugin
    2.activate plugin
    3. go to your Permalinks settings, just copy the current permalink settings (usually default)line of text.
    4. goto (Deans)Permalinks Migration and paste the settings in here and update.
    5. go back to Permalinks and in Custom Structure put= /%category%/%postname%/ (best option) and SAVE !
    Thats it, DONE !!
    Thankyou for such an easy but totally necessary plugin !

    cheers !

  172. I tried the plugin, after i tried Permalink Redirect. However, i dont get it to work. What exactlty do i type at OLd Structure? i know i can put /%category%/%postname%/ as new setting, but is this for the old setting? I use the default wORDPRESS structure at this moment.

    I hope somebody can help me.

  173. Harry just scroll down this page and follow my previous directions step by step and nothing else in between and you will get it !

  174. I have a small problem. This plugin workes great by the way!

    I hope you can help. I had a custom permalink structure with WordPress 2.7 . I changed it but now I need to change it back. I looked at the old url but for some reason can make the old one line up and work.

    I have my blog backed up to my computer. What php file holds the old permalink structure I used?

    Please help.

  175. The Permalinks are not working!! I tried your steps to install and then activate, then i tried to change the link but no use!! Still the same

  176. Great plugin in. Wish I knew about this a year ago when I change the permalinks on one of my blogs. What a mess, even with similar plugin, never got it to work right, I almost abandoned the blog.

  177. Wow I have been trying to figure out how to do this for a couple weeks now. great job on a needed plugin. I don’t know how you guys and gals do it.

    I had a little trouble figuring out the old permalink and found that, at least for my install of 2.8.4 the old structure was:


    I went to the dashboard and tried the permalink, after changing the permalink settings to a name based system, and it worked great.

  178. I love the plugin! Question about functionality: does it prevent me from adding page breaks to my posts? When I add page breaks the link at the bottom of the browser will end in /2/, but it will simply reload the same page (i.e., not go to page 2).


  179. Hi, have you heard of any problems with your plugin inoder because of your plugin after updating to WP 2.8.4?
    I just did that and now my tags and timestamp option don’t worl anymore.

  180. I installed your Permalinks Migration Plugin for wordpress and am wondering if the “Old Permalink Structure” field should have auto populated? or do I need to manually place a string of copy in there.

    My old permalink structure is currently set as: ?p=123

    Is this what I should enter in the “Old Permalink area under migration Settings? Please advise. You can email me at jtwebdesigns[at] if you like

  181. Troubleshooting question: I used this plugin a year or so ago when I wanted to make my permalinks more SEO-friendly, changing it to /%postname%/. Now, however, my site has been accepted to Google News, and I need to change my permalinks again. I followed the steps, making my newer permalink structure the “old” one in the PermalinksMigration tab, and then changed the permalink structure in settings (to /%postname%-%post_id%/).

    Now, all incoming links using the /%postname%/ get 404’d. I don’t mind losing all the very old links (from the original complex permalink structure), but I don’t want to lose more recent incoming links (from the /%postname%/ structure).

    Any ideas?

  182. I use your plugin on quite a few blogs, but on the most recent that I'm using it on, it won't redirect properly without adding 'index.html' at the front of the /%category%/%post_title%/.  Is there a way around this?  I've never had to do this in the past when converting from the default /%post_id%/, but now I'm running into 404 message everywhere.  Thanks for your help.

  183. I just installed Permalinks Migration on my blog, which has over a hundred entries going back for years — and it works great! It's so helpful to have entries organized by category now instead of by random number. I'm not particularly technical, so I got stuck for a while on your directions; I couldn't find "options" on the admin panel. But after I figured out that this is now called "Settings", it went in smoothly. And works perfectly! Thank you so much!

  184. Just installed this. Seems to work nicely on WP 2.8.6. I had to dig pretty good for the format of my old permalink structure. It was default @ /?p=#. I ended up using /%post_id%/%postname%/ for my new structure. After saving, WP still wanted me to edit my .htaccess file, which I didnt even have. I had to create it (using the code WP gave me after saving) and upload it to my root via ftp. Thanks for the plugin.

  185. I used your plugin and unfortunately it was't able to fix my issue. I have custom pages for each link, call them statics and outside of the homepage the rest of my site is broken. please take a look at it and let me know what i need to do.

  186. Hi,
    I´m using your Plugin on some Websites and it works just perfect. But today I tried it on another site and it caused issues.
    Here is what I did:

    The current Permalink structure is set to /%category%/%postname%/
    It should be changed to /%category%/%postname%-%post_id
    So I went to PermalinksMigration Options and entered the current structure and hit save.
    Then I changed the structure.
    I went to the site and entered an "old" URL. Immediately the URL was changed to the new one (with post_id) but the page wasn´t found (404).
    So I deactivated the Plugin changed the Permalinks back and everything was fine.
    Then I changed the Permalinks to the new structure without using the Plugin and the new URLs worked (of course the old URLs didn´t work anymore now and there is no 301 redirect). I just wanted to make sure the new URL structure works basically.
    Is there any known issue with some other Plugin (such as All in One SEO Pack) or do you have any idea what this could be and  – more important – how to fix it.

    Thanx very much in advance

  187. Pingback: Anonymous
  188. Hi Dean,
    I used this great plugin already on a few sites without any issues. But now I´m facing issues with two sites (on the same server). When I change the structure of the permalinks from /%category%/%postname%/ to /%category%/%postname%-%post_id% the redirect basically works but it says 404 nothing found.
    Any idea what this might cause to fail? Maybe something with the htaccess file?
    Thanks in advance

  189. I've gone pretty far in setting up my webpage and creating posts. I decided to change my permalinks to something a little easier for SEO instead of the default. When I did this it rendered my "more"  tags inoperable. When I went back to the default they worked so the "more" tags have to be connected to the permalinks. I don't know enough where to look and correct this situation. I want to use a better permalink structure than the default but also want the more tag to work. Any ideas? My site is –

  190. I like your plugin that help me. I want to know how mutch longer i need to activate the plugin before the seo change te url. &kk

  191. hey im having a problem getting this plugin to work, i cant seem to figure out what to set for the old permalink structure, i am currently on default but i dont know what the default structure tag is, if you could help i would be extremely happy, thanks

  192. Cool, the new permalinks worked immediately.
    Just activate the plugin>go to Dashboard>Options>Permalink and set it to /%postname%/ or possibly /%category%/%postname%/.
    Thanks a lot. Great working and easy to install plugin!

  193. Pingback: Anonymous
  194. Your blog is amazing, i first landed to another post but then get interested and thought, i will just look a little more arround to see what else i can find out about best plugins arround.

  195. I tried this however my permalinks are currently set to default so come up as random page numbers etc. When entering the 'old permalink structure' of the site, I am stuck as to what to put in. I then change the permalinks in setting to /%postname%.html or just /%postname%/ and my pages all come up with 404 errors!?

  196. In the "goto admin panel->options->PermalinksMigration.set the old permanlink structure of your site." I have a question.  What is the old permalink structure of default?  I left that area blank.  Is it "?p="    Leaving it blank seems to have done the trick but want to do it completely right.
    Any feed back would be great.  Thanks!

  197. Just like to say thank you for inventing such amazing plugin.  I was able to change my old posts to a permalink with html ending without affecting the original posts…this is a lot easier than using the redirect plugin.

  198. Currently i am using "/%category%/%postname%/" structure in permalinks option.
    Now, i want to change structure to "/%category%/%postname%-%post_id%.html"
    But if i give this in permalinks and old structure in your plugins text then its not working properly.
    Please help me how can i do this?

  199. @Malen… did you really get this working? This is the second plugin I've tried to achieve my goal of leaving existing posts in tact [?p=802], while making all future posts equal /%category%/%postname%/.
    I installed this plugin, entered /?p=%post_id%/ as my Old Permalink Structure and then changed my Default Permalink Structure to the above, with category and post name. The result is that my homepage gets toasted. Any advice?

  200. Awesome plugin! Installed it and followed your instructions… Worked PERFECTLY. Thank you so much!

  201. This plugin worked great! I'm assuming that I have to leave it activated for the redirects to continue working–in other words, this is not the sort of thing that you install, run, and then remove because everything is fixed?

  202. Hi Dean, 
    Thanks for the plugin. I have recently used it on our travel blog, and it seems to work great, but for some reason after installing the plugin my header image won't render on any of the individual post pages or static pages. Any chance you or someone else can help me troubleshoot this? 

  203. Hi again,
    This is why I never post question for help! I've already solved my problem. I had my header image location set in my header.php file as "/wp-content/themes/theme/images/Banner.jpg". WordPress uses this to look in the root of your site for the file. It automatically puts your URL in front of that first backslash. Since the permalink migration altered the root for each new page, it wasn't finding the file. So, I simply added my full "http://URL/" in front of my header image location in header.php and it solved it.
    ie. In my header.php file, I changed this:
    To this:
    Hope that makes sense for any one else with the same problem. Thanks again for the plugin.

  204. Pingback: Anonymous
  205. I like this plugin and need to use it, however, it works fine for me apart from my post headers are not loading…..any ideas pleas? I have had to deactivate it for now until I find a resolution for this.

  206. This is the 25th website I have used this plugin for , effortlessly time and time again .
    There is not other plugin like this one that offers so much and is so easy , thankyou just not seem to be enough , but nonetheless thankyou AGAIN Dean , this plugin ROCKS !

  207. Hi,
    SInce installing this, I am not getting an error on my RSS feed page. It seems to be adding a blank line to the top of the /feed page that is displayed, which causes the RSS feed subscribe to fail.
    "column 1: Blank line before XML declaration"
    Has anyone had this problem and know how to fix it?

  208. it's kind of a disaster – followed instructions – changed .htaccess and now the whole site is down.  help!  any suggestions?  i even tried going back to the old .htaccess file but it doesn't work.
    any suggestions greatly appreciated!

  209. Pingback: Anonymous
  210. Ciao, I'm using you plugin on the site. It seems to work well. But, looking at the Google webmaster tools panel, I see a lot of crawl errors (really a lot) because of my links are often "not" followed" because of redirect problems. It's true. It happens also to me. Firefox says " Redirect loop".
    Refreshing the page many times, at the end, it displays the right url and no error.
    I'm not a programmer…could you take a look to your plugin a try to fix it? Thanks!!!

  211. I installed the update but I am having a small problem.
    All my pages come up with the new permalink except the blog page.  I get a "page not found error". 
    Any suggestions on how to fix this.

  212. Hi Dean,
    I have downloaded the plugin and activated it on my website (blog). The problem I have is when I try and view old entries (page2) I seem to be missing some of the images. Any ideas why this is happening?

  213. Hi, i have downloaded the newest update for wordpress, but the next is not stored and not displayed. (Text typed in FCK-Editor)

  214. Thanks for this plugin I use it and it full working.
    But i Have i problem in google webmaster tools, after this permalink migration I see in there mete duplicate description. Why?
    ex in google webmaster tools I see for over 180 page like this with duplicate description:


    How I can fix it?

  215. Pingback: Anonymous
  216. Pingback: Anonymous
  217. Hi Dean,
    I noticed that the code of your plugin uses this function call:
    $wp_rewrite->generate_rewrite_rule($oldstruct, false, false, false, true);
    There are five arguments but the actual function only takes two. (the other function – generate_rewrite_rules – takes 6 arguments. I was just wondering what the intent was here.
    Also: the redirection doesn't seem to work for comments pages. If somebody goes to , it doesn't properly redirect, but gives a 404.

    Otherwise, the plugin works very well!

  218. Great plug-in — EXACTLY what I was looking for and solved a major problem.  Not just search engines ending up with 404, but having to notify content partners that links have change!

  219. Pingback: