Domain Mapping System | Manage Multiple Domains in a Single WordPress Site

Description

Domain Mapping System is the best way to manage multiple domains on your WordPress site and point them to any published resource, including Posts, Pages, Products, Categories, or other Custom Post Types and Taxonomies.

🚀 MAP UNLIMITED DOMAINS

Manage and map as many domains as you want for complete control.

🗺️ MAP CONTENT TO ANY DOMAIN

Map domains to any Post, Page, Product, or Custom Post Type, including Blog Categories, Products Archive, and more.

🎬 TRY THE LIVE DEMO

🌱 PLANS & PRICING >

🚧 ROADMAP >

🔍 OPTIMIZE YOUR SEO & MARKETING STRATEGY

Optimize your site for search engines with full Yoast SEO integration, including the option to add custom Titles, Descriptions, and Keywords, as well as Sitemap for each mapped domain.

🔀 SUBDOMAIN MAPPING

Map subdomains to your primary WordPress site, so you don’t have to create a second WordPress install or buy a second domain.

🧩 CREATE “SUBSITES” – GROUP PAGES BY DOMAIN

Create subsites by grouping your posts/pages around a specific domain – a much less complex multisite alternative. [PRO]

🌍 GLOBAL DOMAIN MAPPING

Easily map every unmapped page on your site in one click – so visitors only see mapped domains for all content on your site. [PRO]

🗂 SUBDIRECTORY MAPPING

Map subdirectory URLs of your main site. E.g. – your-site.com/landing-page/ can be set to display the content from the post your-site.com/example-page/landing-page/. [PRO]

📚 ARCHIVE, CATEGORY, AND CUSTOM TAXONOMY MAPPING

Want to map a specific Blog category and all it’s posts to a different domain automatically? Now you can! Map a domain to any archive, category, or custom taxonomy created by a plugin or theme. [PRO]

↪️ FORCE REDIRECT TO MAPPED PAGES

Want to hide the “unmapped” version of your page? There’s a checkbox that allows you to “Force redirect all visitors to the mapped version of a page.” [PRO]

🛒 WOOCOMMERCE INTEGRATION

Map your Shop page and all Products. You can also map a specific product Category and all the products in the category automatically. [PRO]

⏩ WELL-DOCUMENTED SETUP PROCESS

Domain Mapping System requires a bit of knowledge about DNS and server side configuration, so we’ve helped out by documenting the simple steps you’ll need to take. Contact support with any questions.

🔌 HOSTING INTEGRATIONS

Our hosting integrations automate onboarding, saving you time during the setup process. WordPress-based SaaS and WaaS owners can even let their users map domains with the WPCS.io integration.

🌐 MULTISITE SUPPORTED

You can activate Domain Mapping System on your multisite network for each of your subsites. Now multisite is even more powerful with multiple domain management for every site on your network.

🎨 BRANDING PER DOMAIN (FAVICON)

Customize the favicon that appears in your website visitors’ browser for each domain mapped to your site.

🔒 SECURE ALL YOUR DOMAINS

Use SSL across all your domains with one WordPress install (some server configuration required).

⚒️ DEVELOPER FRIENDLY

Take advantage of the REST API to add/delete domains automatically.

🆘 TOP-NOTCH SUPPORT

Get red-carpet support from the Gaucho Plugins team. Just submit a ticket.

EXAMPLE USE-CASE

Let’s say you own 2 domains:

Primary domain (WordPress site): my-awesome-site.com
Secondary domain: my-cool-site.com

With Domain Mapping System, you can map the secondary domain to any Post, Page, Product, or Custom Post Type on your primary site:

my-cool-site.com will display content from
my-awesome-site.com/any-post-you-want/

The plugin does not redirect visitors – the browser URL bar displays the secondary domain my-cool-site.com. This happens using some awesome code, so feel free to explore 😊

IMPORTANT CONFIGURATION INSTRUCTIONS

In order for the plugin to work:

  1. You must set DNS records (both domain A Records should point to the same server)

  2. You must add your mapped domains as an Alias in cPanel or in your server configuration (the root folder for both domains should be your WP install)

For detailed instructions, please see our Documentation.

FREE FEATURES

  • Map unlimited domains
  • Map domains to any post, page, product, or custom post type generated by other plugins
  • Map subdomains
  • Multisite supported

PRO FEATURES

  • Create “Microsites” – set a different homepage and inner pages for each domain
  • Global Domain Mapping – automatically map all published content on your site
  • Subdirectory mapping
  • Force redirect visitors mapped domains
  • Favicon per domain
  • WooCommerce Integration for Shop, Checkout, Cart pages
  • Query string support for UTM parameters on mapped domains
  • Premium support

Roadmap

  • Mapping domains to protected user areas (e.g. – WooCommerce Login + Account).
  • WPML/Polylang/mult-lingual plugin support
  • Google Analytics integration to help track stats on multiple mapped domains

Feel free to submit any feature requests to our public Roadmap.

Screenshots

  • Domain Mapping System Settings Area
  • Adding a Domain Mapping
  • Creating a Microsite
  • Selecting Available Post Types for Mapping
  • Subdirectory Mapping Example

Installation

Starting with Domain Mapping System consists of 3 steps: Configuring your server, installing the plugin, and mapping domains.

SERVER CONFIGURATION REQUIREMENTS

  • Please see our Documentation to configure your server properly.

INSTALL DOMAIN MAPPING SYSTEM FROM WITHIN WORDPRESS

  1. Visit the plugins page within your dashboard and select ‘Add New’;
  2. Search for ‘Domain Mapping System’;
  3. Install & Activate Domain Mapping System;
  4. Go to ‘after activation’ below.

INSTALL DOMAIN MAPPING SYSTEM MANUALLY

  1. Upload the ‘domain-mapping-system’ folder to the /wp-content/plugins/ directory;
  2. Activate the Domain Mapping System plugin through the ‘Plugins’ menu in WordPress;
  3. Go to ‘after activation’ below.

AFTER ACTIVATION

  1. You should be redirected to the settings area;
  2. Add your domain and the Custom Post Type you want it mapped to;
  3. Visit your new domain!

FAQ

What is a mapped domain?

A mapped domain in WordPress is a domain that has a specific page or group of pages associated with it. A mapped domain is usually not the website’s primary domain, but is usually an Alias or Addon Domain that is mapped to the primary site domain.

The mapping then takes place at the website level, as the website should be configured to serve content for both the mapped domain and primary domain.

How do I add multiple domains to a WordPress website?

There are a few steps to map multiple domains to your WordPress website, including:

  1. Configure your DNS Records.
  2. Setup your server with an Alias or Addon Domain.

The next step would be mapping content properly for your mapped domains.

Read more in our Documentation.

How do I map a domain in WordPress?

There are 3 steps to mapping a domain in WordPress:

  1. Configure your DNS settings.
  2. Set up your server properly for an Alias or Addon domain.
  3. Install Domain Mapping System and map domains to the desired content.

Once you’ve followed these steps, you should then be able to navigate your website with the content being served for your mapped domains.

Read more in our Documentation.

Can I map domains in WordPress for free?

Yes! Domain mapping is free in WordPress. You can map unlimited domains to your WordPress website depending on your server configuration.

What are DNS Records?

DNS stands for Domain Name System. The purpose of DNS is translate your server’s IP address into a friendly, easily-legible name that humans can remember. It’s much easier for humans to remember a name than it is a string of numbers.

DNS Records direct the different types of traffic for a domain name to the proper server(s). Each DNS Record corresponds to a different type of service or traffic your domain might receive.

For example:

A records are set for “hosts” and standard website traffic
CNAME records are set as “Aliases” or Canonical records
MX records direct email traffic
TXT records provide many useful options, like domain ownership verification and enhanced security options

This is not a complete list. You can review all the different DNS Record Types.

Where is my DNS hosted?

Your DNS is hosted where your Name Servers are pointing. Your Name Servers are specified with your Domain Name Registrar.

If you’ve just purchased your domain, your DNS host will be your Domain Registrar. If you need to configure a website or email for your domain, you will need to change your DNS settings with your DNS host.

What is a DNS Zone?

A DNS Zone is where your DNS is managed. A DNS Zone is specified by your Name Server records.

Your DNS zone is where you should manage DNS records to publicly identify different services for your domain on the internet. E.g. – If you need to set up a website or email for your domain, you can set up A Records, CNAME Records, or MX Records within your DNS Zone.

If you are unsure where your DNS zone is set, contact your Domain Name Registrar or run a test of your Name Server records on a website like https://whatsmydns.net/.

How do I configure DNS for WordPress?

To set up DNS for your WordPress website, you must point your DNS A record to your website hosting server. For example, if your website hosting server has IP address 123.456.789.0, go to your DNS Zone (specified by where your Name Servers are pointing), and modify the A Record.

The A Record is commonly denoted by an “@” symbol or by typing in the full URL in your DNS settings. You should also configure an A Record or CNAME record for the WWW version of your site, with CNAME being the preferred option if you want all website visitors to navigate to your site without WWW in the URL.

Why isn’t my site appearing after configuring DNS settings?

When you change your DNS settings, it takes up to 24-48 hours for those changes to propagate across the internet. This is called propagation time, and it’s a standard delay that Internet Service Providers around the world need in order to detect DNS changes. Frequently, DNS changes can propagate within a few hours to most locations.

If you already have a website, it’s recommended to clear your browser cache after making DNS changes, as sometimes browsers will cache an old copy of a website from the previous server.

What is website caching?

Caching is a mechanism by which a browser stores data temporarily in order to serve it more quickly in the future.

There is usually a limited time frame associated with a caching script, which determines when the cache should be refreshed automatically. E.g. – Every 4 hours or 8 hours.

You can force the browser cache to be cleared manually, and the process is slightly different depending on your browser and the version of the browser. To find the latest process, run a Google search for “How to clear browser cache for” and then enter your browser type.

What is server caching?

Caching is a mechanism by which a server stores data temporarily in order to serve it more quickly in the future. Server caching is managed by Apache or NGINX, depending on your server configuration.

There is usually a limited time frame associated with a caching script, which determines when the cache should be refreshed automatically. E.g. – Every 4 hours or 8 hours.

You can force the server cache to be cleared manually, and the process is slightly different depending on your server access rights, server interface (cPanel, managed hosting, etc), and tools available to you (Command Line Interface access – CLI, etc).

For the latest process based on your hosting or server configuration, contact your hosting company or try running a Google search for “How to clear server cache on” and then enter your hosting company and/or the brand of your server interface (cPanel, etc).

Is Domain Mapping System compatible with caching plugins?

Yes. Some plugins may require additional configuration. Please reference our Documentation regarding Integrations & Compatibility.

What is an Alias Domain?

Definition
An Alias Domain is a domain name that can be used as an alternate name for another domain.

For example, if you have two domain names pointing to your website, you can “map” the second domain as an “Alias” of the primary domain. Website visitors will see the Alias in their URL bar when navigating the site.

Relevance to WordPress
When you have a WordPress website (or website of any kind), you can assign Aliases to your website. However, not all servers are ready “out-of-the-box” to map domains to a single website and require additional configuration.

Furthermore, your WordPress website needs some extra configuration to “map” each alias to a specific “post” in WordPress (or group of posts).

Posts can include any default post type that comes out of the box with WordPress, like Pages, Posts, Products, etc, or any Custom Post Type created by other plugins or themes.

End Goal: Multiple domains on a single WordPress site
At the end of the day, the purpose of creating an Alias domain on your server is to map multiple domains to a single WordPress installation.

Domain Mapping System let’s you handle the mapping of domains to specific posts after you’ve set up your server properly.

​​What hosting companies are supported?

Many hosting companies don’t support mapping multiple domains to your WordPress website. This is usually because managed hosts prefer to have control over how many domains are pointing to their servers.

Please see our Documentation for a list of hosting companies we’ve found that are compatible with domain mapping and Alias Domains.

Why does my website show «Your connection is not private»?

This error means that your website does not have an SSL certificate properly configured. When you point a domain to a website hosting server, the server needs to have some kind of SSL certificate installed on it in order for the website to be secure. If the server doesn’t have an SSL certificate properly configured for your website, it will give an insecure website error on your browser.

Why isn’t my Alias domain secure?

By default, hosting servers will generally support securing the primary domain registered on a server with an SSL certificate out-of-the-box.

Once you’ve added an Alias domain to your server, you should be able to add an SSL certificate for that domain, which is necessary to secure each domain.

For more information about securing multiple domains on a single hosting server, see our Documentation.

Are multisite networks supported?

Yes – multisite networks are 100% supported in both the Free and PRO versions of the plugin. Just install the plugin, configure the proper settings, and activate it on your network. Then, all your network sites can map their own domains.

Read about the steps to configure multisite in our Documentation.

I’ve found a bug! What now?

Please contact support to report the bug with any relevant screenshots/videos/notes.

Is Domain Mapping System compatible with WooCommerce?

Partly – you can currently map to Products and Product Archives. Full support is on our roadmap.

Is Domain Mapping System compatible with Page Builders?

Yes, you can use any page builder.

Is Domain Mapping System compatible with WPML, Polylang, or other multilingual plugins?

At this point, no. But it’s on our Roadmap!

Is Domain Mapping System compatible with SSL/HTTPS?

Definitely. The SSL certificate(s) installed on the server must be setup for both domains, of course. When adding a domain alias, many cPanel servers will auto-generate SSL certs.

  • Warning: Either All or None of the domains must have an SSL certificate. It’s not possible to display content from a secured site through an unsecured domain.

Why are custom styling, fonts, or icons not showing up?

CSS files might have your primary domain hard-coded into them, which means that many servers will block cross-domain resources because of CORS configuration (Cross-origin Resource Sharing). These articles provide more information on how to configure CORS and prevent this issue:
CORS-Setup on Apache servers
CORS-Setup on Nginx servers

Why do I appear logged-out of the WordPress Dashboard when visiting mapped domains?

The WordPress login system stores your login state using cookies, which are tied to the primary domain of the site. There is no way to manage your WP-Admin via another domain at this point in time.

Is Domain Mapping System GDPR compliant?

Yes. You have complete control over your data. Contact us any time to remove your data or choose NOT to opt-in upon activating the plugin. If you choose to opt-in so we can improve our product, we use Freemius to store user data, which is GDPR ready.

I’m a developer and want to contribute to Domain Mapping System. Where can I do it?

We really appreciate your input! We currently don’t have a public repo, but you can contact us directly with any feature/code suggestions, and we can give you a branch to work on or integrate your suggestions into a future release 😊

Reviews

diciembre 12, 2023
Great little plugin. I can now manage multiple domains on my WordPress site. Very handy for anyone looking to streamline their domain mapping process. Mapping content to any domain has never been this straightforward!Had issues with Yoast Comaptability (A premium feature) - But there tech support were really good was able to resolve my issue with a fast turnaround.
diciembre 7, 2023
At first, I didn't understand how to make the domain mapping work. I ask for support to the plugin technical team. They replied to my email messages in minutes every time. They even logged into my admin panel to take a look and set it for a first URL so I could understand. I recommend.
marzo 14, 2023 1 reply
This is a fantastic plugin. It is excellent for what it is designed to do which is to allow domain mapping to wordpress pages and teh support is also excellent. If you need domain mapping plugin, this is it.
marzo 11, 2023
I started with the free version of this plugin. It was exactly what I was looking for to host several domains as "micro-sites". These sites are a small collection of landing pages that I intend to extend later to full WordPress configurations.I ended up purchasing the Premium version and the team has offered great support and follow-up.
julio 20, 2022
I had a problem with the mirror site settings in the plugin. It was not working for custom post type, etc. So, I wrote to them. I bought this plugin, what, 2 days ago and they already solved it. The support was very involved. It was quick, efficient. Thank you so much for everything!
Read all 29 reviews

Contributors & Developers

“Domain Mapping System | Manage Multiple Domains in a Single WordPress Site” is open source software. The following people have contributed to this plugin.

Contributors

“Domain Mapping System | Manage Multiple Domains in a Single WordPress Site” has been translated into 9 locales. Thank you to the translators for their contributions.

Translate “Domain Mapping System | Manage Multiple Domains in a Single WordPress Site” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.9.8

  • Improved Global URL Rewriting to handle wp_menu() function.
  • Special characters in domains are now supported.
  • Custom Taxonomies and CPTs now supported.
  • Bug fix for WooCommerce Cart ajax updates.
  • Updates to child page slug and child page mapping.

1.9.7

  • Ability to map empty categories now possible.
  • General bug fixes.
  • Small UI updates.
  • Update Freemius SDK.

1.9.6

  • Fixes to meta information on Yoast SEO integration.

1.9.5

  • Yoast SEO integration added!
  • Bugfix for mapping blog pages.
  • Custom tables now use the default DB engine.

1.9.4

  • Update Freemius SDK.
  • Added error message when no published resource is selected for a mapping.
  • Added a save button below mappings and made all save buttons save all settings.
  • Fixes to jquery conflicts.
  • Added support for Bedrock configuration.

1.9.3

  • Update Freemius SDK.

1.9.2

  • Added Global Parent Page mapping.
  • Update to UI to display hierarchy of parent pages.
  • Favicon fixes.
  • Fix to Global URL Rewriting.
  • Improvement for Crockblocks compatibility.
  • Rankmath compatibility bug fix.
  • Freemius SDK update.

1.9.1

  • Bugfix to handle when plugins are installed in non-default directory.
  • Updates to UI.

1.9.0

  • New user interface.
  • Added REST API for adding/deleting mappings.
  • General bug fixes and stability improvements.

1.8.4

  • Fixed URL rewriting issue which was duplicating strings in the URL.

1.8.3

  • Fixed conflict with plugin Variation Swatches for WooCommerce.

1.8.2

  • Fixed conflict with Plesk while Global Domain Mapping is enabled.
  • Updated Freemius SDK to v2.4.5.

1.8.1

  • Bug fix for search mechanism not working in some cases.
  • Multisite improvements when uninstalling the plugin on network sites.
  • Bugfix for Global URL Rewriting not applying correctly.

1.8

  • Multisite integration is now available!
  • Freemius SDK update to v2.4.4.

1.7.7

  • We’ve added support for sites that are installed as a subdirectory. When a subdirectory install is detected, the .htaccess file is updated with a special snippet to support domain mapping.

1.7.6

  • Updates to WPCS integration.

1.7.5

  • Integration with Multiple Domain Mapping plugin to easily import mappings.

1.7.4

  • Bugfix for DB migration issue on 1.7.3.

1.7.3

  • Added Favicon per domain.
  • We’ve resolved some complexities that restricted multiple mappings to the same published resource. Now one published resource can have multiple domains attached to it.
  • Simultaneously mapping a domain with both the root domain and the root domain + subdirectory is now possible.
  • Resolved issues with adding more than 20 mapped domains.

1.7.2

  • Further improvements to the WPCS.io integration.
  • Styling/layout improvements to the Settings area.
  • Fix for Wordence.

1.7.1

  • Added WPCS.io integration. SaaS platforms using WPCS can now offer their clients full domain management of their Tenants.

1.7

  • WooCommerce Shop page mapping support.
  • Added capability to enable mapping of all WooCommerce products by simply mapping the Shop page.
  • Added support for WordPress taxonomies (both native and custom). Taxonomies refer to grouping posts together based on a select number of relationships, like Archives or Categories.
  • Added option to enable mapping of all Custom Post Types within a custom taxonomy by just mapping the taxonomy.
  • Added the option to rewrite all URLs on a mapped page to the mapped domain with Selective Rewriting or Global Rewriting.

1.6.7

  • Fixed an issue with admin_url last param existence.

1.6.6

  • Fixed a bug that prevented editing content in Elementor while free version of DMS was activated.

1.6.5

  • Fix for critical error when uploading multiple Freemius plugins with icons designated.

1.6.4

  • Fixes for conflicts with Yoast SEO and Jupiter theme.

1.6.3

  • The plugin now adds a file into the mu-plugins directory, causing DMS files to be loaded first in order to rewrite some URLs defined by 3rd party plugins. Previously, if DMS was loaded after other plugins, there could be conflicts.
  • With the mu-plugins upgrade, we can now provide temporary fixes for plugin conflicts while we work with other teams to improve compatibility.

1.6.2

  • Fixed an issue where WordPress icons would be missing in some cases.

1.6.1

  • Fixed an issue where subdomain mappings were showing too many redirects when the «Force redirect to mapped pages» option was enabled.

1.6

  • Added Subdirectory mapping! (PRO)
  • Major improvement to the way data is stored in the database with custom tables instead of inside the wp_options table.
  • Fixes to global domain mapping.
  • Fixed an issue appearing in website health check.
  • Added an option to fully delete all plugin settings and data on uninstall.

1.5.2

  • Fixed conflict with WooCommerce JS

1.5.1

  • Bugfix causing upgrade issues

1.5

  • Translated into Spanish, Italian, German, French, Chinese, Japanese, Russian, Indonesian, Dutch, Portuguese, and Turkish
  • Added Global Domain Mapping for PRO version
  • Fixed a bug about forcing visitors to view a mapped domain for the homepage

1.4.7

  • Global domain mapping is now supported, so you don’t have to select every post individually anymore!
  • Bugfix to stop redirects when the homepage is set in WordPress admin.

1.4.6

  • UI text upgrades/bugfixes
  • You can now create “subsites” by selecting multiple posts, pages, or custom post types for a single domain

1.4.5

  • Force site visitors to see the mapped domain of a page (e.g. – disallow visitors to see the primary domain of a page).
  • Ensured WP 5.8 compatibility.
  • Ensured PHP8 compatibility.
  • Update WP Admin menu item to be a top level menu item instead of a submenu item to find it more easily.

1.4.4

  • Added support for query strings to PRO version
  • Updated free-premium upgrade flow.

1.4.3

  • Updated Freemius SDK

1.4.2

  • Added UI message about server configuration requirements.

1.4.1

Freemius integration means that:
* Users can get in touch with our team for feature requests, questions, or issues of any kind directly in the WP Admin.
* Users can upgrade plans and manage their license directly in the WP Admin.
* Improved Security & Privacy options allow users to choose what you do with your data via the opt-in mechanism.
* The Gaucho Plugins development team can focus on creating better features for Domain Mapping System.

1.4

  • Adapted to work with WordPress 5.5

1.3.2

  • Show all posts/pages/cpt-posts

1.3.1

  • Added support for Blogpost Categories

1.3

  • Code Refactoring, got rid of DMS Menu-Class
  • Added support for Posts
  • Added support for CPT Archives
  • Some Admin-UI tweaks (chosen.js instead of HTML-Select, Post Type Selection)
  • Tested with WordPress MU Domain Mapping Plugin
  • To provide MU support, users must now be able to change settings instead of installing plugins to use DMS Options (Capabilities).

1.2.1

  • Fixed empty Bug

1.2

  • Added support for Custom Post Types

1.1

  • Instead of strange page hack, modify page query
  • Remove kill switch as it is unnecessary

1.0

  • No changes – initial release.