WordPress Multisite runs many sites from one WordPress install, sharing plugins, themes and users. It suits networks such as a school with department sites or a franchise with branch sites. It is not the right tool if the sites are unrelated or belong to different customers; separate installs are simpler and safer in that case.
Before you start
- A fresh backup of files and database.
- Pretty permalinks working, and all plugins deactivated during setup.
- For a subdomain network: a wildcard subdomain in cPanel (see below).
Choose subdomains or subdirectories
| Type | Example | Notes |
|---|---|---|
| Subdirectories | example.com/shop | Simplest; one SSL certificate covers everything |
| Subdomains | shop.example.com | Needs a wildcard subdomain and wildcard SSL or one certificate per site |
If the site is older than a month, WordPress forces subdomains to avoid clashes with existing post URLs, unless you change it in code.
Enable the network
- Edit
wp-config.phpin cPanel → Files → File Manager and add above the "stop editing" line:
define( 'WP_ALLOW_MULTISITE', true );- Reload the dashboard and open Tools → Network Setup.
- Choose Sub-domains or Sub-directories, enter the network title and admin email, and click Install.
- WordPress shows two code blocks. Paste the first into
wp-config.phpand replace the WordPress block in.htaccesswith the second. - Log in again. You now have a My Sites → Network Admin menu.
Prepare subdomains in cPanel
For a subdomain network create a wildcard: in cPanel → Domains → Domains → Create A New Domain enter *.example.com and set its document root to the same folder as the main site (usually public_html). Make sure DNS has a wildcard record * pointing to your server; MdmHost's DNS zone usually needs this added in cPanel → Domains → Zone Editor.
AutoSSL does not issue wildcard certificates for every DNS setup. For HTTPS on many subdomains, add each subdomain explicitly or use a wildcard certificate.
Add sites
- Go to Network Admin → Sites → Add New.
- Enter the site address, title and admin email, and click Add Site.
Plugins and themes in a network
- Only the network admin installs plugins and themes, under Network Admin → Plugins.
- Network Activate turns a plugin on everywhere; otherwise each site admin activates it.
- Themes must be Network Enabled before site admins can choose them.
Map custom domains
Each site can use its own domain. Add the domain in cPanel as an alias (parked domain) of the main domain so it shares the same document root, then in Network Admin → Sites → Edit change the Site Address (URL) to the new domain. AutoSSL will cover the alias once DNS points to MdmHost.
Troubleshooting
- New sites return 404: the
.htaccessstill contains the single-site rules. - Subdomain sites show the cPanel default page: the wildcard subdomain is missing or points to another folder.
- Login loops between sites: check
DOMAIN_CURRENT_SITEinwp-config.phpand clear cookies; for mapped domains adddefine( 'COOKIE_DOMAIN', $_SERVER['HTTP_HOST'] );.
