You have a client who wants to launch a network of regional online stores, or a school with a site for each course, or a publisher with dozens of magazines. Every time they ask, you install WordPress from scratch — same plugins, same theme, same configurations. You waste hours. And when a security update arrives, you repeat it on every installation. It's madness.
We, at Meteora Web, have been managing WordPress infrastructures for clients across Italy for years. The solution is WordPress Multisite: one installation hosts multiple sites, sharing core, plugins and themes, but independent for content, users and domain. The first choice is: subdomain or subdirectory? In this guide we'll show you how to configure both, when to choose each, and how to avoid the classic mistakes that make even experts cry.
Why Choose WordPress Multisite to Manage Multiple Sites?
Start from the real problem: you have five separate WordPress sites. Every month you update plugins and core on each. Every year a backup for each. If one gets hacked, the others aren't better protected. Maintenance multiplies the cost. With Multisite, you update once, plugins can be network-activated, backups are done on a single database (with separate tables per site). The savings are immediate.
It's not for everyone: if the sites have very different needs (different themes, incompatible plugins, separate hosting for performance), Multisite can become a bottleneck. We recommend it when sites share at least 70% of the technical base: same theme or child theme, same plugin set, same content type.
Sponsored Protocol
When is Multisite the right choice?
- Networks of franchise or territorial branches
- Multi-store e-commerce platforms (WooCommerce supports Multisite with some caveats)
- Blog or magazine networks with centralized editorial
- Schools or universities with a site per course or department
- Agencies managing similar sites for clients (e.g., professional portfolios)
When should you avoid it?
- Clients requiring separate hosting for compliance or performance
- Plugins not compatible with Multisite (always check)
- Completely independent user management without central admin (possible but complex)
Subdomain vs Subdirectory: Which Structure to Choose?
WordPress Multisite offers two modes for addressing sites: subdomain (e.g., milano.yoursite.com) or subdirectory (e.g., yoursite.com/milano). The difference isn't just aesthetic: it affects SEO, DNS management, and caching. Let's look at pros and cons.
Subdirectory (path-based) – when to use it
Child sites are subfolders of the main domain. Example: yoursite.com/shop1, yoursite.com/shop2. SEO benefits: all link juice stays on the main domain, easier to build authority. Drawbacks: if a child site gets penalized or has poor content, it can drag down the whole domain. Also, plugins and themes must handle relative paths without issues.
Subdomain (subdomain-based) – when to use it
Each site has its own subdomain: milano.yoursite.com, roma.yoursite.com. SEO benefits: Google tends to treat each subdomain as a separate entity, useful for very different topics (e.g., cooking blog vs motoring blog). Drawbacks: each subdomain starts from zero authority; more DNS records and wildcard configuration required. Also, some caching services (CDN) treat subdomains as separate hosts.
Sponsored Protocol
Practical choice for Italian SMEs
We, at Meteora Web, recommend subdirectory for most projects: simpler to set up, no wildcard DNS required, and keeps authority on the main domain. Subdomain is preferable only if you need to isolate content sharply (e.g., sites for different clients with their own branding) or for privacy/cookie reasons (some GDPR scenarios).
How to Configure WordPress Multisite with Subdirectory
Let's see the operational steps. Start from a standard, working WordPress installation. Never convert a live site into Multisite without a full backup and a test environment.
Step 1: Enable Multisite in wp-config.php
Open wp-config.php in your WordPress root. Add this line before the /* That's all, stop editing! */ comment:
define( 'WP_ALLOW_MULTISITE', true );
Save and reload the admin panel. You should see Network Setup under Tools.
Step 2: Run the Network Setup
Go to Tools → Network Setup. WordPress will ask whether to use subdomain or subdirectory. Choose Subdirectory. If your WordPress is in a subfolder (e.g., yoursite.com/wordpress), the subdirectory option may not be available. In that case, use subdomain or move WordPress to root.
WordPress will generate lines to add to wp-config.php and the .htaccess file. Don't skip this step.
Sponsored Protocol
Step 3: Add Network Constants
In wp-config.php, after define( 'WP_ALLOW_MULTISITE', true );, add the generated lines (example):
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false); // false for subdirectory
define('DOMAIN_CURRENT_SITE', 'yoursite.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Step 4: Update .htaccess
Replace the rewrite rules in your .htaccess with those provided by WordPress. If you didn't save them, here they are for subdirectory:
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
Note: some hosts (Nginx) don't use .htaccess. In that case you must configure rewrite rules directly in the server config file (see your host's documentation).
Step 5: Log in and Create the First Site
Now return to the dashboard. You should see My Sites → Network Admin. From there you can create new sites via Sites → Add New. For subdirectory, the path will be yoursite.com/newsite.
How to Configure WordPress Multisite with Subdomain
The process is similar, but with important differences.
Step 1: Enable Multisite and Choose Subdomain
Follow steps 1 and 2 as above, but select Subdomain. WordPress will give you constants with define('SUBDOMAIN_INSTALL', true);.
Sponsored Protocol
Step 2: Configure DNS with a Wildcard Record
For subdomains to work, you need a DNS A or CNAME wildcard record: *.yoursite.com pointing to the same IP as the main domain. Without it, subdomains won't resolve. Many hosting panels (cPanel, Plesk) have a “Subdomain Wildcard” or “Catch-All” option. If not, contact support.
Step 3: Update .htaccess (for subdomain)
The rules are the same as for subdirectory; WordPress generates identical code. The difference is handled internally by the constants.
Step 4: Create the First Subdomain
In Network Admin → Sites → Add New, enter the new site address (e.g., milan). WordPress will automatically convert it to milan.yoursite.com, provided the wildcard record is active.
Handling Common Errors in Multisite Configuration
Even following the steps, problems are frequent. Here are the ones we see most in projects that arrive to us.
Error 1: “The network WordPress is already installed” even though it's not
Happens if you tried to set up multisite before and removed the lines. WordPress stores a flag in the database. Solution: go to phpMyAdmin, find the wp_sitemeta table and delete the row with meta_key = 'site_admins'. Then remove the constants from wp-config.php and start over.
Error 2: Child sites with wrong URLs or redirect loops
Often caused by caching plugins that don't handle the correct domain. Disable all caching plugins during configuration. If you use Redis or Varnish, ensure they respect the host header. For subdomain, verify DNS propagation (use dig milan.yoursite.com).
Sponsored Protocol
Error 3: Plugins not compatible with Multisite
Many plugins are not declared compatible. Before network-activating them, test on a child site. We have a checklist:
- Does the plugin use
network_admin_url()instead ofadmin_url()? - Does it have custom database tables? Could conflict between sites.
- Does it support
switch_to_blog()correctly?
Error 4: Shared uploads management
By default, media files for each site are in separate folders (e.g., wp-content/uploads/sites/2/). If you need centralized storage, consider plugins like Network Shared Media.
What To Do Now
- Make a full backup of the database and files before any modification.
- Set up a staging environment to test the network risk-free.
- Choose the structure: subdirectory for most projects, subdomain only when strong isolation is needed.
- Check compatibility of every plugin and theme with Multisite.
- Establish an update policy: update plugins and core on the network, but always test first on a test child site.
If you're already in a project and have doubts, check out our pillar page on advanced WordPress development: you'll find guides on custom themes, REST API and more. We, at Meteora Web, work with these technologies every day. If you need a consultation or an audit on your current infrastructure, contact us.