Mercator
WordPress multisite domain mapping for the modern era.
|
|
A Human Made project. Maintained by @rmccue.
|
|
Mercator is a domain mapping plugin for the New World. Using new features
included with WordPress 3.9 and later, Mercator builds on the new multisite
features and abilities to improve your world., (*1)
Stop using outdated practices, and start making sense., (*2)
Requirements
Mercator requires WordPress 3.9 or newer for the new sunrise processes. Mercator
also requires PHP 5.3+ due to the use of namespaced code., (*3)
What is Domain Mapping?
When setting up a Multisite install, the network is configured to create sites either as subdomains of the root site (e.g. subsite.network.com
) or subfolders (e.g. network.com/subsite
)., (*4)
Domain Mapping is the process of mapping any arbitrary domain (called an alias) to load a site. If an alias of arbitrarydomain.com
is set for the site network.com/subsite
, the site and wp-admin interface can be accessed over either the alias or the original URL., (*5)
Internally, Mercator looks at a request's domain and informs WordPress what set of tables to use. User authentication cookies are set for all domains in the network, so a user logs in on one site and is authenticated across all., (*6)
Installation
Mercator must be loaded during sunrise., (*7)
We recommend dropping Mercator's directory into your mu-plugins
directory. You may need to rename the folder from Mercator-master
to mercator
., (*8)
Then create a wp-content/sunrise.php
file with the following:, (*9)
<?php
// Default mu-plugins directory if you haven't set it
defined( 'WPMU_PLUGIN_DIR' ) or define( 'WPMU_PLUGIN_DIR', WP_CONTENT_DIR . '/mu-plugins' );
require WPMU_PLUGIN_DIR . '/mercator/mercator.php';
Additionally, in order for sunrise.php
to be loaded, you must add the following to your wp-config.php
:, (*10)
define('SUNRISE', true);
Aliases are created in the Network Admin > Sites > Edit Site screen., (*11)
DNS for mapped domains must be configured for the domain to point to the WordPress
installation, as well as configuring the web server to route requests for the
domain to the WordPress application., (*12)
Upgrading from WPMU Domain Mapping
This plugin is a complete replacement for WPMU Domain Mapping. The database
structure is fully compatible., (*13)
Note that if you have Domain Mapping code in your sunrise, you should remove
this and replace it with the recommended sunrise code above. Mercator hooks in
to WordPress' internal site mapping code rather than replacing it, unlike Domain
Mapping., (*14)
License
Mercator is licensed under the GPLv2 or later., (*15)
Credits
Created by Human Made for high volume and large-scale sites, such as Happytables. We run Mercator on sites with millions of monthly page views, and thousands of sites., (*16)
Written and maintained by Ryan McCue. Thanks to all our contributors., (*17)
Mercator builds on concepts from WPMU Domain Mapping, written by Donncha O'Caoimh, Ron Rennick, and contributors., (*18)
Mercator relies on WordPress core, building on core functionality added in WP27003. Thanks to all involved in the overhaul, including Andrew Nacin and Jeremy Felt., (*19)
Interested in joining in on the fun? Join us, and become human!, (*20)