If you want to change the primary domain of your WordPress multisite installation, there are 5 values to change. There is no need to perform a database dump. This is actually frowned upon, as WordPress stores serialized data in the database, and altering it can cause corruption. Here is a list of the 4 main tables and options that need to be changed (note that we’re assuming your table prefix is “wp_”. If you’re using a different table prefix, replace “wp_” in the following table names with your prefix):
- wp_options: options named “siteurl” and “home”
- wp_sitemeta: the option named “siteurl”
- wp_blogs: any entries in the “domains” column that have the old domain name
- wp_#_options: Each sub-site will have sets of tables that correspond to the blog_id in the wp_blogs table. You need to go to the wp_#_options table, where # corresponds to the blog_id, and update the “siteurl” and “home” settings in that table.
WordPress has different rules for different fields. wp_site and wp_blogs can NOT have http:// or a trailing slash at the end of the domain name. Where as in wp_options, it is required to have the http:// at the beginning, and in wp_sitemeta it’s required to have http:// at the beginning and a trailing slash.
Also make sure to comment out any pre-defined constants in your wp-config.php file, as they will override settings in the database. Things such as:
After that, we have to manually tell our servers which domain is the new primary domain. We can make this change, and push it out in under a couple of seconds.
Note: In most cases you may/will need to update a entry in your WP-Config.php file. The code I would recommend taking a look at is the code snippet here:
On the line that has “define(‘DOMAIN_CURRENT_SITE’,'mysite.wpengine.com’);”
You will replace “mysite.wpengine.com” with your domain. So for example:
If you need further assistance, please contact tech support.