Eine WordPress Multisite mit dem WP-CLI installieren

Mein Adventskalender, für den ich viel Zuspruch bekommen habe, hat unter anderem Torsten Landsiedel dazu bewogen das #projekt52 zu starten:

Eigentlich wollte ich ja nach dem Adventskalender erst einmal wieder etwas kürzertreten, habe mich dann aber doch überreden lassen. Immerhin muss ich ja nur ein Siebtel der Beiträge schreiben, die ich noch im Dezember geschrieben habe 🙂 Dies ist also mein erster Beitrag.

Eine Multisite installieren – der normale Weg

Zur Installation einer Multisite gibt es eine recht gute Erklärung im CODEX von WordPress, hier fehlt allerdings eine deutsche Übersetzung. Eine gute deutsche Anleitung findet man beispielsweise bei MarketPress inklusive aller notwendigen Schritte. Man muss bei diesem manuellen Setup sowohl Änderungen an Dateien im Dateisystem vornehmen, als auch im Dashboard der bestehenden Installation. Ich möchte euch aber zeigen, wie man sehr schnell mit dem WP-CLI eine Multisite installieren kann.

Die Installation über das WP-CLI

Viele von euch haben vielleicht schon Seite, die sie zu einer Multisite umwandeln möchten. Hierzu benötigt ihr nur einen einzigen Befehl. Ich möchte aber kurz den Weg einer kompletten Installation beschreiben.

Aktuelle WordPress Version downloaden

Ich hatte beim WP Meetup Potsdam schon einmal einen Vortrag gehalten, wie man ein WordPress mit wenigen Befehlen installiert. Für den Artikel gehen wir mal davon aus, dass ihr bereits eine Datenbank für die Installation angelegt habt und das WP-CLI installiert habt (die Installation hiervon wird auf der Website beschrieben).

Um die aktuelle WordPress Version auf euren Server zu laden ist nur ein einziger Befehl notwendig:

wp core download --locale=de_DE

Mit dem zusätzlichen Parameter laden wir uns gleich die Version mit der deutsche Sprachdatei herunter. Mehr ist wirklich nicht zu tun. Das WP-CLI entpackt WordPress automatisch ins aktuelle Verzeichnis.

Eine WordPress-Konfiguration anlegen

Damit das WP-CLI mit der Installation beginnen kann, muss erst eine wp-config.php Datei erstellt werden. Ihr könnte diese natürlich manuell kopieren und anpassen oder die berühmte 5-Minuten-Installation wie gewohnt verwenden, aber es geht ebenfalls mit einem einzigen Befehl:

wp core config --dbname=<name> --dbuser=<user> --dbpass=<pass> --locale=de_DE

Neben den Zugangsdaten zur Datenbank und dessen Namen könnt ihr noch die locale, also die Sprache der Website angeben. Ist die Konfiguration erfolgreich angelegt worden, können wir mit der Installation beginnen.

Die Multisite-Installation schrittweise durchführen

Über das WP-CLI kann man eine Singlesite installieren, aber eben auch eine Multisite. Viele Befehle des WP-CLI kann man schrittweise ausführen und da eine Installation recht viele Schritte benötigt, führen wir folgenden Befehl aus:

wp core multisite-install --prompt

Wir werden nun in insgesamt 8 Schritten nach den notwendigen Informationwn gefragt, die für die Installation benötigt werden.

Zusammenfassung

Ich habe für euch die Installation mal am Beispiel einer lokalen Installation auf einem Windows-System mit XAMPP durchgeführt. Hier könnt ihr sehen, wie das ganze abläuft und welche Rückmeldungen und Aufforderungen euch das WP-CLI dabei gibt

wp-cli-multisite-install-commands

Wie ihr an den Fragen zur Multisite-Installation sehen könnt, ist es möglich, über das WP-CLI eine Multisite mit einem Subdomain- und auch einem Subfolder-Setup zu installieren. Wenn ihr ein Subdomain-Setup verwenden möchtet, dann ist die base einfach nur ein Slash (oder ihr drückt einfach ENTER).

Der Installationsprozess aktualisiert automatisch die wp-config.php um die notwendigen Konstanten, die ihr in der manuellen Installation selbst ergänzen müsstet. Wie die Installation zum Ende erwähnt, müsste ihr noch im Backend unter “Einstellungen -> Permanlinks” die Einstellungen einmal speichern, was ihr ja ohnehin tun solltet.

Die Serverkonfiguration anpassen

Was das WP-CLI nicht automatisch durchführt ist die Erstellung einer .htaccess Datei. Diese hat ja ohnehin nur auf einem System mit Apache Webserver eine Bedeutung. Den passenden Code für eure .htaccess Datei findet ihr im Backend in der Netzwerkverwaltung unter “Einstellungen -> Netzwerk-Einrichtung”. Sollte diese Einstellungen noch nicht funktionieren, könnte ihr im CODEX weitere Beispiele finden. Wenn ihr einen nginx Webserver verwendet, dann gibt es auch hierzu eine passende Anleitung im CODEX.

Eine Single-Site in eine Multisite konvertieren

Wer schon eine bestehende WordPress-Installation hat und diese in eine Multisite überführen möchte, der kann ebenfalls das WP-CLI verwenden. Ich rate euch dringend, vorher ein Backup der Installation und besonders von der Datenbank zu machen. Anschließend könnt ihr folgenden Befehl verwenden:

wp core multisite-convert --prompt

Die Konvertierung läuft hierbei genauso ab wie bei der Installation. Auch hierbei muss eventuell die .htaccess angepasst werden und natürlich sollten auch die Permalink-Einstellungen neu gespeichert werden. Hatte ich eigentlich schon erwähnt, dass es auch hierfür einen Befehl gibt? 🙂

wp rewrite flush

Fazit

Wie ihr sehen könnt, ist es mit dem WP-CLI wirklich sehr einfach, eine Multisite zu installieren oder eine bestehende Single-Site Installation in eine solche zu konvertieren. Wer bisher das WP-CLI noch gar nicht verwendet hat, der sollte es sich auf jeden Fall mal ansehen. Es hat noch sehr viel mehr nützliche Befehle, um euch das Leben zu erleichtern.

Ich bin gespannt auf euer Feedback. Und solltest ihr Themenwünsche für die restlichen 51 Kalenderwochen haben, dann immer her damit 🙂

Veröffentlicht von

Bernhard ist fest angestellter Webentwickler, entwickelt in seiner Freizeit Plugin, schreibt in seinem Blog über WordPress und andere Themen, treibt sich gerne bei den WP Meetups in Berlin und Potsdam herum und läuft nach Feierabend den ein oder anderen Halbmarathon.

4 Kommentare » Schreibe einen Kommentar

  1. Danke für die Anleitung. Werde mich mal intensiver mit WP-CLI befassen. Kleine Anmerkung: Die lokale per wp-config zu setzen ist seit WordPress 4 nicht mehr sinnvoll, bzw. ist ‘deprecated’. Die eingefügte locale wird u.a. von Plugins ignoriert und führt teilweise zu Warnmeldungen. Hierzu gibt es nun in den Einstellungen selbst, die Sprachwahl per dropdown.

    • Sehr gerne. Die WP-CLI solltest du dir wirklich mal ansehen, damit kann man sehr viel automatisieren oder vereinfachen.

      Ich denke das mit der locale hast du etwas falsch interpretiert. Vermutlich habe ich es nicht richtig formuliert. Mir ist natürlich bewusst, dass sie schon lange nicht mehr als Konstante WP_LANG in die wp-config.php Datei gehört. Der beschriebene Befehl fügt die locale aber auch nicht dort ein, sondern setzt eben genau die Option, die man auch über das von dir erwähnte Dropdown einstellt.

      • Ok, ich probiere es mal aus. In der Doku auf wp-cli.org steht ‘Set the WPLANG constant. Defaults to $wp_local_package variable’ , liest sich m.E. etwas missverständlich, da doch die Konstante WPLANG nicht mehr greift. Ich prüfe und berichte 🙂

  2. Cooler Artikel, habe erst vor Kurzem von der WP-CLI erfahren, super was man alles damit anstellen kann. Vor allem deutlich einfacher als bisher 🙂

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.