Is it really neccessary to put WP_HOME, WP_SITEURL in wp-config.php or set these settings via admin panel every time when moving a WordPress instance to another url (for example: moving from dev environment to production)? Is there any better strategy?
|
|
||||
|
|
migrated from stackoverflow.com May 9 '11 at 17:27
|
What I do here is I keep an entry in my /etc/hosts file pointing the site domain to 127.0.0.1. Most of the time the line is commented so my machine points to the production site, and when I'm developing something I just uncomment the line and the domain will point to my dev box. I know it's kinda ugly, but since Wordpress puts the domain in a lot of fields in the database (especially if you need to work with real data in your development environment), it's the fastest method I could come up with. |
|||
|
|
|
When you move from one server to another the problem could be URLs that WP serialized in DB. To do a safe search and replace you can use this tool search replace db. Is very simple, follow the instructions and remember to remove the script when done. |
|||
|
|
|
You could put those settings in an external file and exclude it from your publishing process. |
|||
|
|
|
Those parameters and admin settings change the URLs in the database. The only other way to do that is run SQL queries on the DB in phpmyadmin to change them:
|
|||||||||
|
|
I don't mess with core files, I just move the themes and plugins around instead. I develop locally and zip the themes and plugins for production. I have about ten WordPress installs most internal and this has worked well for me so far. I also, don't move much data around so this answer may not help you. There are some pretty extensive free plugins for backing up data and restoring. |
|||
|
|
|
Use on the top of your functions.php: update_option('siteurl','http://yoursite.com'); update_option('home','http://yoursite.com'); Navgigate through your site a bit, login the backend en remove these lines. This should be sufficient. |
|||
|
|
