We rented a SEO specialist for our site, and he says that we have to do some changes in site structure before he starts his work.
The first is, that now most pages have 301 redirection.
For example:
mysite.com/2010/12/02/postname/?p=5500
is redirected tomysite.com/2010/12/02/postname/
- some posts are redirected from
mysite.com/2010/12/02/postname/?=12786
tomysite.com/2010/12/02/another-postname/
- some posts have redirection from
www.mysite.com/2010/12/02/postname/Mysite/?p=32123
towww.mysite.com/2010/12/02/another-postname
I would like to know:
- Why does it happen?
- Is it a normal WP behavior?
- How can I change it?
- Is it really important to avoid this for good SEO?
Yup, that is very normal.
If you don’t want WP to redirect anything. Simply remove the action by adding this code into your working template functions.php file.
remove_action( 'template_redirect', 'redirect_canonical' );
That will deactivate the redirections, all of them.
I would not trust your SEO contractor on this one. The reason WordPress does that by default is to attempt to feed search engines a page name that has words in it rather than an arbitrary database location. Google can use the words semantically to attempt to classify the page; whereas, they can’t if the page is called ?p=31245 or whatever.
Having all those rules in your .htaccess file doesn’t slow the server down appreciably, but it does fix a serious SEO issue which is duplicate content. When a search engine comes by and sees /products and ?p=1234 and they have the same content, they have to decide which to give credit to. A house divided against itself… well, you know the rest.
Let the 301 redirects stay, as they are healthy. Removing them will surely open the door to indexing issues.