Zur Administration der eigenen WordPress-Installation ist der offensichtlichste Weg für die meisten User wohl die Nutzung des Web-Backends oder vielleicht eine Smartphone-App.
Seit einigen Jahren gibt es mit der WP-CLI aber eine weitere Möglichkeit, die mehr als nur einen Blick wert ist: die Nutzung vieler WordPress-Backend-Funktionen über die Kommandozeile. Jetzt denkt ihr vielleicht: „Kommandozeile? Klingt kompliziert, und warum sollte ich mir das anschauen? Mit der grafischen Oberfläche kann ich doch alles machen, und das ist so einfach.“ Berechtigte Frage. Hier erkläre ich euch, was die WP-CLI überhaupt ist und welche Vorteile sie gegenüber dem „normalen“ Backend von WordPress bietet.
Was ist die WP-CLI?
Die WP-CLI ist das Kommandozeilen-Interface für WordPress. Es bietet eine Sammlung von Kommandos an, mit denen ihr verschiedene Aktionen ausführen könnt, wie etwa Plugins installieren oder WordPress aktualisieren.
Ursprünglich wurde das Projekt von Andreas Creten und Cristi Burcă gestartet – der erste GitHub-Commit im WP-CLI-GitHub-Repo ist vom 9. September 2011. Inzwischen ist die WP-CLI ein offizielles WordPress-Projekt, dessen Weiterentwicklung durch Sponsoren finanziell unterstützt wird.
Welche Vorteile bietet mir die WP-CLI?
Wenn die CLI einmal auf eurem Server installiert ist und ihr euch ein bisschen damit beschäftigt habt, könnt ihr viele Aufgaben schneller erledigen als über die grafische Oberfläche: statt euch mit mehreren Klicks ans Ziel zu navigieren, reicht ein Befehl aus. Wenn ihr unterschiedliche Sites auf dem Server habt, könnt ihr Aktionen auch gleichzeitig für mehrere davon ausführen.
In Verbindung mit Cronjobs könnt ihr WP-CLI-Kommandos automatisiert ablaufen lassen und so beispielsweise täglich ein Backup der Datenbank oder alle verfügbaren Plugin-Updates machen (davor sollte zur Sicherheit ein Backup erstellt werden, falls ein Plugin-Update etwas kaputt macht).
Ein paar weitere Beispiele von Dingen, die mit der CLI möglich sind:
Wie ihr seht, bietet die WP-CLI auch Funktionen, die standardmäßig nicht über das visuelle Backend erledigt werden können, wie hier die Neuerstellung von Thumbnails oder das Sichern der Datenbank – dafür bräuchtet ihr normalerweise ein Plugin.
Auf WordPress.org gibt es ein eigenes Make-Blog für die CLI, von wo auch auf eine Liste mit den unterschiedlichen Befehlen verlinkt wird.
Was brauche ich für die WP-CLI?
Einen SSH-Zugang, um die WP-CLI direkt auf dem Hostingserver installieren und dort Kommandos ausführen zu können.
Wenn ihr lokal entwickelt, reicht natürlich die normale Kommandozeile des Betriebssystems.
WP-CLI installieren
Im Handbuch zur WP-CLI sind verschiedene Wege aufgeführt, um die WP-CLI zu installieren. Empfohlen wird die Installation über den Phar-Build. Dazu müsst ihr die wp-cli.phar herunterladen, zum Beispiel mit folgendem Befehl in der Kommandozeile:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Code-Sprache: Bash (bash)
Anschließend könnt ihr testen, ob es funktioniert hat:
php wp-cli.phar --info
Code-Sprache: Bash (bash)
Das sollte euch eine Ausgabe mit Infos zu der WP-CLI und ein bisschen mehr geben. Statt immer php wp-cli.phar
eingeben zu müssen, können wir die Datei ausführbar machen und in wp
umbenennen – so kann WP-CLI dann über wp
aufgerufen werden:
chmod +x wp-cli.phar
sudo mv wp-cli.phar wp
Code-Sprache: CSS (css)
Nun haben wir noch den Nachteil, dass sich die WP-CLI momentan nur in dem Verzeichnis nutzen lässt, in dem wp
liegt. Schöner wäre es, wenn wir sie von überall aufrufen könnten – dafür verschieben wir die Datei in einen Ordner, der in der PATH
-Variable eingetragen ist. Das könnte beispielsweise so aussehen:
sudo mv wp /usr/local/bin/wp
Code-Sprache: Bash (bash)
Die PATH
-Variable ist eine Umgebungsvariable, die es auf Windows, Linux und Mac OS gibt. In der Variable sind Ordnerpfade gespeichert, in denen das Betriebssystem nach einer ausführbaren Datei sucht, wenn bei einem Befehl kein Pfad zu einer Datei angegeben ist. Je nach Betriebssystem gibt es verschiedene Wege, sich die Ordner anzeigen zu lassen, die bereits in PATH
eingetragen sind und diese zu verändern.
Jetzt müsstet ihr von irgendwo auf dem Server wp --info
ausführen können und wieder ein Ergebnis wie beim php wp-cli.phar --info
-Aufruf vom Anfang bekommen.
Installation testen
Wenn ihr nun in das Verzeichnis einer WordPress-Installation wechselt und zum Beispiel den Befehl wp plugin list
ausführt, solltet ihr eine Liste mit allen Plugins erhalten.
Wenn ihr euch schnell eine Übersicht aller Befehle anzeigen lassen wollt, könnt ihr den Befehl wp help
nutzen – nähere Infos und alle Unterbefehle zu einem einzelnen Befehl bekommt ihr über wp help <befehl>
(also für den plugin
-Befehl zum Beispiel wp help plugin
).
Danke für den Tipp! Ich werde mir bei Gelegenheit mal das CLI anschauen. Mal sehen wie es sich im Test macht.