Add the following code to your wp-config.php file, right before the line that says /* That's all, stop editing! Happy publishing. */
$domain = array("domain1.com", "www.domain1.com", "domain2.com", "www.domain2.com");
if (in_array($_SERVER['HTTP_HOST'], $domain)) {
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
}
This code dynamically sets the site URL based on how a visitor accesses the site, ensuring both domains work correctly.
Important Considerations:
-
Allow All Domains: If you want to allow any domain pointing to your server, replace the
if (in_array(...))block with just the twodefinelines, though using the domain array is safer to prevent unwanted access. -
HTTPS Support: If your site uses HTTPS, change
'http://'to'https://'in bothdefinestatements. -
Subdirectory Installations: If WordPress is in a subdirectory (e.g.,
/wp), modify the code accordingly:define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/wp');. -
Avoid Plugin Conflicts: When testing, temporarily deactivate plugins to check for conflicts.