Kurz gesagt: Mit Multisite betreibst du mehrere Websites in einer einzigen WordPress-Installation. Du schaltest die Funktion frei, indem du define( 'WP_ALLOW_MULTISITE', true ); in die wp-config.php einträgst, unter Werkzeuge → Netzwerk-Einrichtung zwischen Subdomains und Unterverzeichnissen wählst und anschließend die angezeigten Zeilen in wp-config.php und .htaccess übernimmst. Überleg vorher gut, ob du Multisite wirklich brauchst: Der Rückweg zu einzelnen Installationen ist aufwendig.
Wann Multisite sinnvoll ist und wann nicht
Multisite lohnt sich, wenn viele ähnliche Websites zentral verwaltet werden sollen: ein Blog-Netzwerk für eine Schule, Filialseiten eines Unternehmens, Sprachversionen einer Website oder eine Plattform, auf der sich Nutzer eigene Blogs anlegen. Alle Websites teilen sich Kern, Plugins, Themes und Benutzerkonten. Du aktualisierst einmal und alle profitieren.
Weniger geeignet ist Multisite, wenn die Websites nichts miteinander zu tun haben, unterschiedlichen Kunden gehören oder sehr unterschiedliche Plugins brauchen. Ein Fehler oder eine Sicherheitslücke trifft dann alle Websites gleichzeitig, und nicht jedes Plugin unterstützt Multisite. Für zwei oder drei unabhängige Seiten sind getrennte Installationen meist einfacher.
Subdomains oder Unterverzeichnisse?
| Subdomains | Unterverzeichnisse | |
|---|---|---|
| Adressen | blog1.example.com | example.com/blog1/ |
| Voraussetzung | Wildcard-DNS-Eintrag und Wildcard-SSL-Zertifikat oder einzelne Einträge je Website | keine besonderen |
| Bestehende Website | immer möglich | bei Installationen, die älter als einen Monat sind, bietet WordPress diese Option nicht an, weil es zu Konflikten mit bestehenden Permalinks kommen kann |
| Eigene Domains je Website | per Domain-Mapping möglich | per Domain-Mapping möglich |
Die Entscheidung lässt sich später nur mit Aufwand ändern. Sollen die einzelnen Websites eigene Domains bekommen, lies zusätzlich Domain-Mapping im Multisite-Netzwerk.
Anleitung: Multisite einrichten
- Backup erstellen: Sichere Dateien und Datenbank, siehe WordPress-Backup erstellen.
- Permalinks prüfen: Unter Einstellungen → Permalinks muss eine sprechende Struktur aktiv sein, nicht „Einfach“.
- Alle Plugins deaktivieren: Unter Plugins → Installierte Plugins alle markieren und „Deaktivieren“ wählen.
- Multisite freischalten: Trag in der
wp-config.phpoberhalb der Zeile „That’s all, stop editing“ ein:define( 'WP_ALLOW_MULTISITE', true ); - Netzwerk einrichten: Lade das Backend neu, öffne Werkzeuge → Netzwerk-Einrichtung, wähle Subdomains oder Unterverzeichnisse, gib Netzwerktitel und Admin-E-Mail ein und klicke auf „Installieren“.
- Code übernehmen: WordPress zeigt dir zwei Code-Blöcke. Den ersten fügst du in die
wp-config.phpein, den zweiten ersetzt die WordPress-Regeln in der.htaccess. Übernimm genau die angezeigten Zeilen, sie passen zu deiner Installation. - Neu anmelden: Du wirst abgemeldet. Nach der Anmeldung findest du oben in der Werkzeugleiste den Punkt Meine Websites → Netzwerkverwaltung.
- Plugins wieder aktivieren: Entweder netzwerkweit oder einzeln pro Website.
Der Block für die wp-config.php sieht bei einer Installation mit Unterverzeichnissen etwa so aus:
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
define( 'DOMAIN_CURRENT_SITE', 'example.com' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
Die passenden .htaccess-Regeln für ein Netzwerk mit Unterverzeichnissen (Apache, WordPress ab 3.5) laut offizieller Dokumentation. Sie ersetzen den bisherigen Block zwischen # BEGIN WordPress und # END WordPress:
# BEGIN WordPress Multisite
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
# END WordPress Multisite
Verlass dich trotzdem vorrangig auf den Block, den dir die Netzwerk-Einrichtung anzeigt. Liegt WordPress selbst in einem Unterordner, weicht er ab. Die Varianten für Subdomains und nginx stehen in der Dokumentation zu Apache und .htaccess.
Was sich im Netzwerk ändert
- Plugins und Themes installiert nur noch der Super-Admin in der Netzwerkverwaltung. Die Administratoren der einzelnen Websites können sie nur aktivieren, wenn du das erlaubst. Mehr dazu unter Benutzerrollen und Rechte.
- Themes musst du im Netzwerk erst „netzwerkweit aktivieren“, bevor die einzelnen Websites sie auswählen können.
- Benutzerkonten gelten im ganzen Netzwerk, die Rolle legst du pro Website fest.
- Jede Website bekommt eigene Datenbanktabellen (
wp_2_posts,wp_3_postsusw.) und einen eigenen Upload-Ordner unterwp-content/uploads/sites/. - Die maximale Upload-Größe und erlaubte Dateitypen stellst du in den Netzwerkeinstellungen ein.
Typische Fehler
- „Netzwerk-Einrichtung“ fehlt im Menü: Die Zeile
WP_ALLOW_MULTISITEsteht an der falschen Stelle, zum Beispiel unterhalb vonrequire_once ABSPATH . 'wp-settings.php';. - Neue Websites liefern 404 oder die Hoster-Standardseite: Bei Subdomains fehlt der Wildcard-DNS-Eintrag (
*.example.com) oder die Subdomain zeigt nicht auf das WordPress-Verzeichnis. - Endlosschleife beim Anmelden: Meist stimmt
DOMAIN_CURRENT_SITEnicht mit der tatsächlichen Adresse überein, etwa mit oder ohnewww. - Stylesheets der Unterseiten fehlen: Die
.htaccess-Regeln wurden nicht vollständig übernommen.
Für Fortgeschrittene: Multisite mit WP-CLI
# Bestehende Installation in ein Netzwerk umwandeln (Unterverzeichnisse)
wp core multisite-convert --title="Mein Netzwerk"
# ... oder mit Subdomains
wp core multisite-convert --title="Mein Netzwerk" --subdomains
# Neue Website im Netzwerk anlegen
wp site create --slug=filiale-muenchen --title="Filiale München"
# Alle Websites auflisten
wp site list --fields=blog_id,url
# Befehl auf einer bestimmten Website ausführen
wp --url=example.com/filiale-muenchen plugin list
multisite-convert schreibt die Konstanten in die wp-config.php, die .htaccess-Regeln musst du danach noch selbst ergänzen.
Frage dazu? Für Netzwerke gibt es ein eigenes Forum: Multisite & Netzwerke im WPDE-Forum
Häufige Fragen
Kann ich Multisite wieder abschalten?
Nur mit Aufwand. Die Hauptseite läuft nach dem Entfernen der Konstanten weiter, die anderen Websites musst du vorher exportieren und als eigene Installationen neu aufsetzen.
Brauche ich für Multisite einen besonderen Hoster?
Unterverzeichnisse laufen bei fast jedem Hoster. Für Subdomains brauchst du Wildcard-DNS und ein passendes SSL-Zertifikat. Frag deinen Hoster, ob beides möglich ist.