Wer hauptsächlich mit WordPress arbeitet – sei es nun als Entwickler oder auch Webmaster – sollte über eine Multisite Installation nachdenken. Das aktualisieren der Themes, Plugins aber auch WordPress selbst wird hierdurch um ein Vielfaches einfacher und eine Multisite ist auch ratz fatz umgesetzt. Wie, erkläre ich hier.
1. Blog für Multisites vorbereiten
Aus einer herkömmlichen Blog-Installation kann man sehr einfach eine Multisite erzeugen, in dem man lediglich ein paar wenige Schritte vornimmt. Zunächst öffnet man die wp-config.php im Dokumentroot-Verzeichnis und trägt oberhalb von /* That’s all, stop editing! Happy blogging. */ folgendes ein:
define('WP_ALLOW_MULTISITE', TRUE);
/* That's all, stop editing! Happy blogging. */
Nach der Anmeldung als Admin im Blog findet man unter „Werkzeuge“ den neuen Menüpunkt „Netzwerk einrichten“.
2. Netzwerk einrichten
Nachdem man nun den Menüpunkt „Werkzeuge“ -> „Netzwerk einrichten“ angeklickt hat, sollte man die Einstellungen (aktuell bei WP-3.4) so belassen:
- Sub-Verzeichnisse aktivieren (auch empfohlen, wenn man die Blogs unter eigenen Domains erreichbar machen möchte – dazu später mehr)
- Titel und Email-Adresse sollten ausgefüllt werden
Anschließend wird mit „Jetzt installieren“ Multisite installiert und man erhält im Anschluss weitere Instruktionen.
3. Multisite Installation abschließen
Um die Installation einer Multisite abzuschließen, müssen die Schritte auf der Folgeseite nach der Multisite-Installation sorgfältig ausgeführt werden. Unter anderem setzt man unterhalb der letzten Änderung in der wp-config.php die neuen Konstanten:
define('WP_ALLOW_MULTISITE', TRUE);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
$base = '/';
define('DOMAIN_CURRENT_SITE', 'domain.tld');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
/* That's all, stop editing! Happy blogging. */
und fügt in die .htaccess im Dokumentroot (falls noch nicht vorhanden, diese bitte mit dem folgendem Inhalt erstellen) aus dem zweiten Teil der Schritte die RewriteRules ein:
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [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).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*.php)$ $1 [L]
RewriteRule . index.php [L]
Im Anschluss muss man sich neu in das System einloggen und siehe da, schon verfügt man über eine Multisite-Installation, in der man als „Netzwerk-Administrator“ unter „Blogs“ dann sehr simpel weitere Blogs anlegen kann, die ab sofort dann unter „domain.tld/blogname“ erreichbar sind.
4. Die Subblogs mit eigenen Domains der Multisite erreichbar machen
Um die sog. Subblogs nun mit eigener Domain erreichbar zu machen, benötigt man nun noch das Plugin WordPress-Mu-Domain-Mapping, welches Netzwerkweit nach dem Upload aktiviert werden muss. In dem Verzeichnis des Plugins ist auch eine Datei namens sunrise.php, die in das Verzeichnis /wp-content raufgeladen werden muss und in der wp-config.php muss noch folgender Eintrag hinzugefügt werden:
define('WP_ALLOW_MULTISITE', true);
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'domain.tld' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
define( 'SUNRISE', 'on' );
/* That's all, stop editing! Happy blogging. */
Wie man mit dem Plugin nun Domains korrekt zuordnet, kannst Du im Folge – Artikel Multisite & Subblogs mit unterschiedliche Domains nachlesen.
erst einmal schönen Dank für diese Anleitung, hat bis zum Schluss funktioniert.
Nun kommt leider ein ABER,
Nachdem ich mich wieder einloggen wollte, kam eine Fehlermeldung und die Aufforderung die Datenbank zu Reparieren, hier wurden nun ein paar Tabellen nicht gefunden.
„Die Tabelle wp_1_comments ist nicht in Ordnung. Es wird Bericht über folgenden Fehler erstattet: Table ‚gegenhartz.wp_1_comments‘ doesn’t exist. WordPress wird versuchen diese Tabelle zu reparieren…
Reparieren der wp_1_comments Tabelle fehlgeschlagen. Fehler: Table ‚gegenhartz.wp_1_comments‘ doesn’t exist“
Hiervon 9 mal.
Nun komme ich aber auch nicht mehr an die Datenbank (MySQL- Xammp) weder mit phpadmin, noch mit MySQL-Front, hat aber bis Dato alles funktioniert.
Was kann ich nun tun ?????
Gerd
Hi,
ich hab das nach der Anleitung probiert. Erstmal danke dafür! Allerdings gibt er mir folgenden Fehler aus:
Warnung: Ein bestehendes WordPress Netzwerk wurde entdeckt.
Bitte schliesse die Konfigurationsschritte ab. Um ein neues Netzwerk zu erstellen musst du deine Datenbank bereinigen und die Netzwerk-Datenbank-Tabellen entfernen oder leeren.
Ich wüßte allerdings nicht was ich noch abschliessen soll, da ich alle Änderungen wie beschrieben durchgeführt habe. Installiert ist WP3.5 und BP1.6.
Und bei der Gelegenheit noch eine andere Frage: Ich möchte Usern sowohl als auch anbieten Ihren Blog über eine Subdomain bei mir oder eine eigene Domain erreichbar zu machen. Geht das nur wenn ich Weiterleitungsdomains einrichte oder gibt es da auch einen komfortableren Weg?
Vielen, vielen Dank für Eure Hilfe!
Hey!
Das Problem hat sich erledigt, bleibt nur noch die zweite Frage zu klären…
Ich möchte Usern sowohl als auch anbieten Ihren Blog über eine Subdomain bei mir oder eine eigene Domain erreichbar zu machen. Geht das nur wenn ich Weiterleitungsdomains einrichte oder gibt es da auch einen komfortableren Weg?
Also, sowohl als auch Domains & Subdomains müsste auch funktionieren, wenn man denn bei den Einstellungen nicht „Verzeichnisse“ sondern „Subdomains“ ausgewählt hat. Dann haben generell alle angelegten Blogs erstmal nur Subdomains, solang Du keine Domain auf einen Blog anlegst. Da müsste man mit rumprobieren… was anderes würde mir dazu nicht einfallen.
Hi,
wie hat sich denn das 1. Problem mit der Fehlermeldung erledigt? Die bekomme ich nämlich gerade auch, obwohl wir eine frische WP 3.5.1-Installation aufgesetzt haben – mit den Eintragungen in der wp-config.php und der.htaccess-Datei, individielles Tabellen-prefix ist auch vergeben. Ich bekam erst den Screen, wo man zwischen Sub-Domain und Subfolder auswählen muss. Da habe ich letzteres gewählt und seit dem frischen Login bekomme ich wieder die Warnung, dass bereits ein Netzwerk besteht. Ich muss allerdings dazu sagen, dass bereits diese WordPress installation unter wp1.website.de läuft. Kann es damit zusammenhängen?
Wie hast du das Problem gelöst?
Hallo
ich habe auch diese Fehlermeldung:
Warnung: Ein bestehendes WordPress-Netzwerk wurde gefunden.
Bitte schließe die Schritte zur Einrichtung ab. Um ein neues Netzwerk anzulegen, musst du die Netzwerk-Datenbanktabellen leeren oder entfernen.
Wo finde ich diese Datenbanktabellen?
Ich habe auf localhost die Multisize-Funktion aktiviert. wenn ich die beiden Codes in die config.php und .htacess Datei einfüge, kann ich meine lokale Seite nicht mehr erreichen
Selbiges Problem habe ich auch und ich komm nicht mehr weiter :(
Weiß jemand Rat?
Vielen Dank! Ich werde es Versuchen und berichten.
Danke für diese gut verständliche Anleitung. Kann man auch in WP-Multisite einen fertigen Blog einfügen?
ich habe 2 verschiedene fertige blogs mit vollständige WP installationen. Bei blog1 habe ich WP als Multi-site nach deiner Anleitung eingerichtet, hat alles gut geklappt, nun möchte ich blog2 importieren, wie gehe ich da vor?
Ist eigentlich gar nicht so schwer…
1. Installiere Dir auf dem zweiten Blog in der Multisite das Plugin WordPress-Importer
2. Im Original-Blog exportierst Du im Admin unter „Werkzeuge“ -> „Daten exportieren“ deine gesamten Inhalte und erhältst eine XML zum Download.
3. In dem jeweiligen neuen Blog in der Multisite gehst Du dann nach Aktivierung des Plugins WordPress-Importer wiederum zu „Werkzeuge“ -> „Daten importieren“ und solltest dort dann „WordPress“ anklicken können, bei dem sich eine neue Seite öffnet, wo Du diese zuvor erhaltene XML auswählen und importieren kannst.
4. Es öffnet sich ein Dialog, bei dem Du die Authoren-Zuweisung vornehmen kannst und – ganz wichtig – auch die Medien kopieren kannst (checkbox -> Auswählen).
Der Import kann je nachdem wie viel Inhalt / Medien es sind einige Zeit dauern. Am ende sollten aber alle Inhalte inkl. der Medien in deinem neuem Blog importiert sein ;)
Viel Erfolg,
Stefan
Hallo und danke für die Anleitung!
Habe alles so gemacht, wie beschrieben.
Ich habe auf den Netzwerkseiten aber den Reiter „Werkzeuge“nicht, kann also auch nichts importieren.Was könnte hier verkehrt gelaufen sein?
Wenn ich den Reiter „Einstellungen“ anklicke erscheint die Fehlermeldung, dass die Seite nicht gefunden wurde.
Würde mich über Hilfe freuen.
Carl
Absolut keine Ahnung, sowas les ich zum ersten Mal. Schon mal im WPDE-Forum nachgefragt?
[…] wpler.com – Entwicklung & Tests einfach mit Multisite […]
Danke für die Anleitung. Bei mir funktioniert die Installation allerdings nicht. Wenn ich den Code aus dem Backend (nach dem Werkzeuge-Schritt) in die config.php eintrage und dann aktualisiere, bekomme ich eine Fehlermeldung die besagt, dass die Verbindung zur Datenbank defekt ist. Super nervig. :-(
Du hast aber auch nur wie unter Werkzeuge beschrieben den Code hinzugefügt und nicht die komplette wp-config.php ersetzt? Das liest sich für mich, als wurden die DB-Konstanten entfernt bzw. verändert.