Multisite is the feature that runs several sites from one WordPress. Themes and plugins are shared, while posts, users and settings are separate per site.
The process has three stages: add a line to wp-config.php → install the network → add the code it gives you.
Step 1: allow multisite
Add one line to wp-config.php. It must go above “That’s all, stop editing!”
define('WP_ALLOW_MULTISITE', true);Step 2: install the network
- Reload the admin screen and open “Tools” → “Network Setup”
- Choose subdomains or subdirectories (decide here, because changing later is painful)
- Enter the network title and admin email and press “Install”
Step 3: add the code it gives you
After installing, the screen shows code to paste into wp-config.php and .htaccess. Copy it exactly as instructed. The wp-config.php side looks like this.
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false); // false for a subdirectory install
define('DOMAIN_CURRENT_SITE', 'example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);For .htaccess, you replace the existing WordPress block (you don’t append). Once you’ve swapped it, log out and back in as instructed.
Subdomains versus subdirectories
| Subdirectories | Subdomains | |
|---|---|---|
| URL | example.com/shop/ | shop.example.com |
| DNS setup | Not needed | Wildcard DNS required |
| Ease | ◎ Start right away | △ Needs server support |
| How it reads | Part of the same site | An independent site |
| What it suits | Branch pages, language pages, team sites | Per-brand sites, sites you lease out |
When in doubt, subdirectories. No DNS or server configuration, and you can still assign individual domains later.
Adding child sites
Once installed, “My Sites” → “Network Admin” appears in the admin bar.
- “Network Admin” → “Sites” → “Add New”
- Enter the site address (slug), site title, language and admin email
- Press “Add Site”
That gives you a child site like example.com/shop/. Changing the slug later affects URLs everywhere, so settle on a short, clear name at the start.
The admin screen’s structure changes
In multisite, permissions and settings live at two levels.
- Network administrator (Super Admin)—installs themes and plugins, adds sites, manages users globally
- Each site’s administrator—posts, static pages and that site’s settings
There are three important differences to remember.
- Only the network administrator can install themes and plugins (site administrators can’t)
- A theme must be “network enabled” before sites can choose it
- Plugins are either “network activated” for every site, or activated individually per site
Settings to know before you start
Upload size limits
Under the network admin’s “Settings,” you can adjust the per-site upload limit (the default is conservative). Raise it early on sites that use a lot of images.
Allowing user registration
The same “Settings” page decides who may register and who may create sites. For internal use, “disabled” or “administrators only” is the safe choice.
Allowed file types
You can specify which extensions the whole network permits. Check here if you’ll be handling SVG or ZIP files.
How themes and plugins are handled
wp-content/
├── themes/ ← shared by every site (network enable to distribute)
├── plugins/ ← shared by every site (activate globally or individually)
└── uploads/
├── (the main site's images)
└── sites/2/ ← child sites' images go into per-site-ID foldersImages are separated per site (uploads/sites/<ID>/), so you can’t reuse an image across sites through the media library (referencing it by URL still works).
Can you undo it?
Fully reverting a multisite is not easy (per-site tables get added to the database). With a single child site, exporting the posts and moving them to a fresh WordPress is the realistic route.
Start on the assumption that you can’t go back—that’s the safe stance. If you’re unsure, check the fit in the article on pros and cons.
Summary
- The process is
WP_ALLOW_MULTISITE→ Network Setup → paste the given code intowp-config.phpand.htaccess - Subdirectories are the easy route (subdomains need wildcard DNS). Changing later is painful
- Themes and plugins are installed by the network administrator and “network enabled”
- Reverting is hard, so backups and a test run first are the premise
The setup itself takes about ten minutes. The hard part is judging whether multisite genuinely suits you.