Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

Every time im about to put my local project into staging/production environment im beeing hardly reminded that WordPress saves all the urls as absolute.So i need to rewrite all the urls with a SQL-query, or use something like Search-and-replace script.

But why is WordPress doing this?

What is the benefits?

Is it a must for WordPress to work correctly?

There are themes like Roots where there are functions like roots_root_relative_url using preg_replace to remove the full url.

Wouldn't it be better to only have relative urls, what is the downsides of that?

The benefits of Relative urls in the database can be: Easy migration from local to stage/production on all links, attachments and so on. Cleaner, shorter urls in html.

But, Because WordPress doing absolute urls i sure that its good, im only want to now why and why not.

share|improve this question
    
I am not sure why WP is doing that, but from an SEO perspective, absolute URLs are preferred. You can read this post by Yoast to know more about this subject. –  Ahmad M Feb 8 '13 at 16:30
    
Thanks Ahmad, Thats funny, im just started reading this. Very good article! But do you agree or disagree that it would be nice with relative urls for development? cus where should the line be for seo/development? Just want others perspectives :) ! –  Pontus Abrahamsson Feb 8 '13 at 16:35
    
Of course it would be easier to use relative URLs when writing code, but for me I do give a lot of weight to SEO consideration and I think that is best practice. Besides it is not really that hard to do DB search and replace as you mentioned. In fact, I use plugins like Duplicator to perform that task for me. –  Ahmad M Feb 8 '13 at 16:41
    
For this very reason I use BackupBuddy to migrate my sites which means I can develop a site in full and preserve its entire configuration upon migration, letting the plugin do all the search and replace for me. Its not that big of a deal for me and as such I prefer absolute URLs, for absolute assurance things are going where they ought to go... absolutely. –  userabuser Feb 8 '13 at 16:44
    
No its not that hard to make a Search and replace within SQL, but that can be pretty scary if there are plenty of data that needs to be rewritten every time you working in local/stagin envoirment. And if you want/cant relay on a third-party-plugin that doing the magic for you. –  Pontus Abrahamsson Feb 8 '13 at 16:56

1 Answer 1

up vote 3 down vote accepted

If there were only relative URLs, what would they be relative to? A post can be viewed in several different contexts, including a feed, and a WordPress install can move into a different directory relative to root. There are issues with doing it either way, absolute URLs just give you a more concrete starting point from which to make changes.

share|improve this answer
    
Aaah thats true! But wouldn't it be good to have relative URL:s within content, like attachments, internal links and so on? and the siteurl intact? –  Pontus Abrahamsson Feb 8 '13 at 16:53
2  
No, because the relative URL can change as well when you change permalinks and such. If you're going to have to do search-replaces anyway, then the absolute URL is easier to search on and replace on. –  Otto Feb 8 '13 at 17:02
    
True, Thanks for the comment and answer! –  Pontus Abrahamsson Feb 8 '13 at 17:04

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.