WP-CLI: Command Line Interface für WordPress

Mit WP-CLI lässt sich WordPress-Installationen über die Kommandozeile verwalten. So ist eine schnelle Anpassung der Beiträge, Plugins oder anderer Einstellungen möglich, ohne dass ein Login in das WP-Admin erfolgen muss. In diesem Artikel beschreiben wir, wie man WP-CLI auf unseren Servern einrichten und nutzen kann.

Voraussetzungen

Zur Nutzung von WP-CLI wird mindestens PHP 5.3.2 und ein SSH-Zugang benötigt. Diese Voraussetzungen sind ab dem domainFACTORY Tarif ManagedHosting Pro erfüllt.

Ob Ihr Tarif PHP und SSH unterstützt, finden Sie in der Tarifbeschreibung. Klicken Sie dafür unter „Informationen“ im Kundenmenü neben „Tarif“ auf den Namen des Tarifs oder schauen Sie einfach nach, ob in der linken Navigation in der Rubrik „Für Profis“ die Menüpunkte „SSH-Konfiguration“ und „PHP-Einstellungen“ angezeigt werden. Wenn ja, sind die Voraussetzungen erfüllt.

Download und Einrichtung

Zunächst muss WP-CLI heruntergeladen werden. Loggen Sie sich dazu via SSH auf den Server ein und wechseln in das Verzeichnis, in das Sie WP-CLI speichern möchten oder legen ein neues Verzeichnis dafür an. Führen Sie dann zum Download von WP-CLI folgenden Befehl aus:

wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Weisen Sie der Datei Rechte zum Ausführen zu:

chmod u+x wp-cli.phar

Nun können Sie testen, ob es funktioniert:
(Der Befehl php56 führt PHP in der derzeit aktuellsten PHP Version 5.6.0 bei uns aus.)

php56 wp-cli.phar --info

Damit zur Nutzung von WP-CLI nicht jedes Mal “php56 wp-cli.phar” eingetragen werden muss, legen Sie am besten einen Alias “wp” dafür an.
Je nachdem, welche Shell Sie nutzen, finden Sie folgende Datei auf der obesten Ebene Ihres Home-Verzeichnisses:
bash: .bashrc
zsh: .zshrc
tcsh: .tcshrc
Existiert die Datei noch nicht, legen Sie sie einfach neu an.

Tragen Sie in die Datei die folgende Zeile ein: (Bitte ersetzten Sie /pfad/zur/wp-cli.phar durch den Pfad zu Ihrer wp-cli.phar!)

alias wp='/usr/local/bin/php5-56STABLE-CLI /pfad/zur/wp-cli.phar'

Sollten Sie eine tcsh -Shell nutzen, ersetzen Sie bei der Definition des Alias das Gleichzeits-Zeichen bitte durch ein Leerzeichen.

Testen Sie nun erneut, ob es funktioniert:

wp --info

WP-CLI nutzen: Hilfe und Befehle

Um alle Befehle aufzulisten, geben Sie „wp“ in die Befehlszeile ein. Weitergehende Hilfe zu einzelnen Befehlen erhalten Sie über „wp help <befehl>„:

wp help <befehl>

Um WordPress über WP-CLI zu verwalten, wechseln Sie bitte in das oberste Verzeichnis der WordPress Installation. Sie können nun z.B. Beiträge bearbeiten, Updates einspielen, Plugins und Themes installieren, etc.

Folgend zeigen wir einige Beispiele für die Plugin- und Beitrags-Verwaltung und der Suchen-Ersetzen-Funktion auf.

Plugin-Verwaltung

Zur Verwaltung der Plugins wird der Befehl „plugin“ verwendet. Einige wichtige Kommandos dabei sind z.B.:

wp plugin status: Zeigt alle installierten Plugins und deren Status an
wp plugin update <Name des Plugins>: Aktualisiert das angegebende Plugin
wp plugin update –all: Aktualisiert alle Plugins
wp plugin activate <Name des Plugins>: Aktualisert das angegebene Plugin, gegenteilig zu deactivate
wp plugin install <Name des Plugins>: Installiert das angegebene Plugin, gegenteilig zu uninstall

Beiträge verwalten

Beiträge werden mit „post“ verwaltet. Dabei werden insbesondere die Post-IDs oft gebraucht, diese erhält man in der Liste aller Beiträge:

wp post list: Zeigt eine Liste aller Beiträge mit den Informationen ID, Titel, Name, Datum und Status
wp post edit <id>:  Offnet den Beitrag zur Bearbeitung des Inhalts
wp post create: Erstellt einen neuen Beitrag. Der komplette Befehl könnte so aussehen: wp post create –post_status=publish –post_title=’Neuer Beitrag‘ –post_content=’Inhalt des Beitrags‘
wp post delete <id>:  Löscht einen Beitrag

Suchen und Ersetzen

Gerade um z.B. die Installationsdomain von WordPress zu ändern, müssen oft einige Anpassungen gemacht werden.

Mit Suchen und Ersetzen geht das mit einer einzigen Befehlszeile:

wp search-replace altedomain.de neuedomain.de

An dieser Stelle möchten wir kurz erwähnen, dass vor größeren Änderungen immer ein Backup erstellt werden sollte!

Eine komplette Übersicht über den Umfang von CLI mit allen Befehlen und Möglichkeiten ist auf der Seite http://wp-cli.org zu finden.

WP-CLI eignet sich sehr gut zur schnellen Administration der WordPress Installation und ist für Nutzer mit Erfahrung auf der Linux-Konsole nahezu selbsterklärend – die Einrichtung lohnt sich also!

 

End of article

Anna Philipp

Über den Autor

Anna Philipp

Anna arbeitet seit 2006 bei DomainFactory. Als Social Media und Content Manager vertritt sie DF in den sozialen Netzwerken (Facebook, Twitter, Googleplus und natürlich im DF-Blog). In ihrer Freizeit findet man Anna - sofern sie mal nicht online ist - höchstwahrscheinlich zwischen Rührschüsseln und Schneebesen am Backofen.

5 Kommentare

Die von Ihnen hier erhobenen Daten werden von der domainfactory GmbH zur Veröffentlichung Ihres Beitrags in diesem Blog verarbeitet. Weitere Informationen entnehmen Sie bitte folgendem Link: www.df.eu/datenschutz


  • dunkelangst
    dunkelangst - 5. Mai 2015 um 15:39 Uhr

    Hallo Anna!

    Danke für deinen Blog Beitrag! Habe jetzt meinen MyHome Plus Tarif auf ManagedHosting Pro upgegradet. Das sollte ab morgen funktionieren.

    Loggen Sie sich dazu via SSH auf den Server ein

    Leidenschaftlich nutze ich debian GNU/Linux zu Hause. Aber ich hatte noch nie einen Kommandozeilen Zugriff auf den Server. Sorry, für die dumme nachfrage: wie loggt man sich denn ein?

    Die ganzen restlichen Befehle bin ich dann ja von meinem Linux zu Hause gewohnt und freue mich darauf sie auch auf dem Server einsetzen zu können. 🙂

    Viele Grüße

    • Anna
      Anna - 5. Mai 2015 um 15:47 Uhr

      Hallo dunkelangst! Sie finden Ihre SSH-Zugangsdaten nach dem Tarifwechsel unter „SSH Konfiguration“ im Kundenmenü.
      Sie können dann einen SSH-Account erstellen und sich unter Linux im Terminal mit folgendem Befehl verbinden:

      ssh benutzername@hostname

  • Wolfgang
    Wolfgang - 30. Juni 2016 um 15:55 Uhr

    Hallo,
    vielen Dank für den interessanten Blog-Beitrag!
    Zwei Sachen sind mir aufgefallen:
    1. Ich finde es wichtig, dass in jedem Beitrag auch ein Datum der Erstellung steht. So kann man auf die Schnelle einschätzen, wie aktuell die enthaltenen Infos sind.
    2.
    „wp plugin activate : Aktualisert das angegebene Plugin, gegenteilig zu deactivate“
    Müsste es nicht heißen: „Aktiviert das angegebene Plugin“? Das Aktualisieren wird ja zwei Zeilen weiter oben beschrieben.
    Viele Grüße
    Wolfgang

  • Daniel
    Daniel - 16. März 2017 um 15:56 Uhr

    Das klingt, als könne man mit wp-cli die WordPress-Updates mit den Nutzerrechten des angemeldeten Shell-Users ausführen und ich muss nicht dem www-User Schreibrechte auf die WP-Installation geben. Das wäre natürlich was, wenn dem so ist.

  • kisys
    kisys - 28. März 2017 um 23:11 Uhr

    Vielen Dank für den alten aber immer noch guten Beitrag!
    So könnte man den Alias-Befehl optimieren und den lokalen Pfad „automatisch“ eintragen lassen:

    alias wp=’/usr/local/bin/php5-56STABLE-CLI ‚`pwd`’/wp-cli.phar‘

    Voraussetzung ist natürlich das man im Pfad ist, wo das CLI-Script sich befindet.