GithubHelp home page GithubHelp logo

pfennell / mercator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from humanmade/mercator

0.0 2.0 0.0 127 KB

WordPress multisite domain mapping for the modern era.

License: Other

PHP 100.00%

mercator's Introduction

Mercator
WordPress multisite domain mapping for the modern era.
Build status Coverage via codecov.io
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.

Stop using outdated practices, and start making sense.

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.

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).

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.

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.

Installation

Mercator must be loaded during sunrise.

We recommend dropping Mercator's directory into your mu-plugins directory. You may need to rename the folder from Mercator-master to mercator.

Then create a wp-content/sunrise.php file with the following:

<?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:

define('SUNRISE', true);

Aliases are created in the Network Admin > Sites > Edit Site screen.

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.

Upgrading from WPMU Domain Mapping

This plugin is a complete replacement for WPMU Domain Mapping. The database structure is fully compatible.

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.

License

Mercator is licensed under the GPLv2 or later.

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.

Written and maintained by Ryan McCue. Thanks to all our contributors.

Mercator builds on concepts from WPMU Domain Mapping, written by Donncha O'Caoimh, Ron Rennick, and contributors.

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.

Interested in joining in on the fun? Join us, and become human!

mercator's People

Contributors

rmccue avatar roborourke avatar tcrsavage avatar ericandrewlewis avatar joehoyle avatar chrisvanpatten avatar zamoose avatar ipstenu avatar spacedmonkey avatar mattheu avatar tomjn avatar

Watchers

James Cloos avatar Pamela Fennell avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.