WP-CLI
WP-CLI ist das Kommandozeilen-Werkzeug für WordPress. Du kannst Plugins aktualisieren, Multisite-Installationen konfigurieren und vieles mehr, ohne einen Browser zu benutzen.
Die laufende Pflege wird ermöglicht durch:
Das aktuelle stabile Release ist Version 2.9.0 (engl.). Folge für Ankündigungen @wpcli auf Twitter oder registriere dich für Aktualisierungen per E-Mail (engl.). Sieh dir die Roadmap an (engl.), um einen Überblick zu erhalten, was in zukünftigen Releases geplant ist.
Quick links: Benutzung | Installation | Support | Erweitern | Mitwirken | Credits
Benutzung
WP-CLI bietet eine Kommandozeilen-Benutzeroberfläche für viele Aktionen, die du eigentlich im WordPress-Administrationsbereich durchführst. wp plugin install --activate
(Dok.) lässt dich beispielsweise ein WordPress-Plugin installieren und aktivieren:
$ wp plugin install user-switching --activate
Installing User Switching (1.0.9)
Downloading installation package from https://downloads.wordpress.org/plugin/user-switching.1.0.9.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'user-switching'...
Plugin 'user-switching' activated.
Success: Installed 1 of 1 plugins.
WP-CLI enthält auch Befehle für viele Dinge, die du im WordPress-Administrationsbereich nicht tun kannst. Mit wp transient delete-all
(Dok.) kannst du beispielsweise bestimmte oder alle Transients löschen:
$ wp transient delete --all
Success: 34 transients deleted from the database.
Für eine umfassendere Einführung in die Benutzung von WP-CLI, lies am besten die Schnellstartanleitung (engl.), oder sieh dir Shell-Freunde (engl.) an, um mehr über die Kommandozeilen-Helferlein zu erfahren.
Bereits genug von den Basics? Sieh dir die komplette Liste an Befehlen (engl.) für detailliertere Informationen zur Verwaltung von Themes und Plugins, Datenimport und -export, Suchen/Ersetzen-Operationen in der Datenbank und mehr an.
Installation
Das Herunterladen der Phar Datei ist unsere empfohlene Installationsweise. Falls nötig, gibt es auch eine Dokumentation zu alternativen Installationsmethoden (engl.) (Composer (engl.), Homebrew (engl.), Docker (engl.)).
Bevor du WP-CLI installierst, stell bitte sicher, dass dein System die Mindestanforderungen erfüllt:
- UNIX-ähnliche Umgebung (OS X, Linux, FreeBSD, Cygwin); eingeschränkter Support in Windows-Umgebungen
- PHP 5.6 oder neuer
- WordPress 3.7 oder neuer. Ältere Versionen als das aktuelle WordPress-Release haben funktionelle Einschränkungen
Sobald du die Mindestanforderungen geprüft hast, lade die wp-cli.phar-Datei mittels wget
oder curl
herunter:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Prüfe als nächstes, ob die Phar-Datei funktioniert:
php wp-cli.phar --info
Um WP-CLI auf der Kommandozeile durch blosses Eintippen von wp
zu benutzen, mach die Datei ausführbar und verschiebe sie irgendwo hin innerhalb deines PATH. Zum Beispiel:
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
Wenn WP-CLI erfolgreich installiert wurde, solltest du bei der Ausführung von wp --info
etwas wie hier sehen:
$ wp --info
OS: Linux 5.10.60.1-microsoft-standard-WSL2 #1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64
Shell: /usr/bin/zsh
PHP binary: /usr/bin/php8.1
PHP version: 8.1.0
php.ini used: /etc/php/8.1/cli/php.ini
MySQL binary: /usr/bin/mysql
MySQL version: mysql Ver 8.0.27-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))
SQL modes:
WP-CLI root dir: /home/wp-cli/
WP-CLI vendor dir: /home/wp-cli/vendor
WP_CLI phar path:
WP-CLI packages dir: /home/wp-cli/.wp-cli/packages/
WP-CLI global config:
WP-CLI project config: /home/wp-cli/wp-cli.yml
WP-CLI version: 2.9.0
Aktualisieren
Du kannst WP-CLI mittels wp cli update
(Dok. (engl.)) aktualisieren oder indem du die obigen Installationsschritte wiederholst.
Wenn WP-CLI dem root-Benutzer oder einem anderen Systembenutzer gehört, musst du sudo wp cli update
ausführen.
Lebst du gerne gefährlich? Führe wp cli update --nightly
aus, um den letzten Nightly Build von WP-CLI zu benutzen. Der Nightly Build ist mehr oder weniger stabil genug für die Nutzung in deiner Entwicklungsumgebung und enthält jeweils die neusten und besten Funktionen von WP-CLI.
Tab-Vervollständigung
Für WP-CLI gibt es auch ein Skript zur Autovervollständigung von Befehlen für Bash und ZSH. Lade einfach die wp-completion.bash herunter und referenziere sie in der ~/.bash_profile
-Datei:
source /ABSOLUTER/PFAD/ZUR/wp-completion.bash
Vergiss nicht, danach source ~/.bash_profile
auszuführen.
Wenn du zsh für deine Shell benutzt, musst du möglicherweise erst bashcompinit
laden und starten, bevor du den source
-Befehl nutzt. Füge das folgende in deine .zshrc
ein:
autoload bashcompinit
bashcompinit
source /ABSOLUTER/PFAD/ZUR/wp-completion.bash
Support
Die Betreuer und Mitwirkenden hinter WP-CLI sind Freiwillige und haben nur begrenzt Zeit, um generelle Supportanfragen zu beantworten. Die aktuelle Version von WP-CLI (engl.) ist die einzig offizielle unterstützte Version.
Prüfe zunächst, ob es bereits auf einer dieser Seiten eine Antwort auf deine Frage gibt:
- Gängige Probleme und deren Lösungen (engl.)
- WP-CLI-Handbuch (engl.)
- Offene oder geschlossene Probleme in der WP-CLI-GitHub-Organisation (engl.)
- Themen mit dem Tag ‘WP-CLI’ im WordPress.org-Supportforum (engl.)
- Fragen mit dem Tag ‘WP-CLI’ im WordPress-StackExchange (engl.)
Wenn du auf keiner dieser Seiten eine Antwort findest, kannst du folgendes tun:
- Tritt dem
#cli
-Kanal im WordPress.org Slack (engl.) bei, um mit jemandem zu chatten, der gerade da ist. Das ist die beste Möglichkeit für kleine Fragen. - Erstelle ein neues Thema (engl.) im WordPress.org-Supportforum und füge den Tag ‘WP-CLI’ hinzu, sodass die Community es sieht.
GitHub Issues sind nur für das Verwalten von Erweiterungen und Bugs existierender Befehle gedacht, nicht für allgemeinen Support. Sieh dir unsere Best Practices (engl.) an, bevor du einen Fehler meldest, damit dein Issue in angemessener Zeit bearbeitet werden kann.
Bitte stell keine Supportfragen auf Twitter. Twitter ist kein akzeptabler Ort für Support weil: 1) es ist schwierig Konversationen unter 280 Zeichen zu führen und 2) Twitter ist kein Ort, an dem jemand mit der gleichen Frage frühere Antworten in einer Konversation finden kann.
Denk daran, frei != gratis. Die Open-Source-Lizenz garantiert dir die Freiheit zur Nutzung und Bearbeitung, aber nicht anderer Leute Zeit. Bitte sei respektvoll und setze deine Erwartungen dementsprechend.
Erweitern
Ein Befehl ist die atomare Einheit der WP-CLI Funktionalität. wp plugin install
(Dok. (engl.)) ist ein Befehl. wp plugin activate
(Dok. (engl.)) ist ein anderer.
WP-CLI unterstützt das Registrieren jeder aufrufbaren Klasse, Funktion oder Closure als Befehl. Es liest die Informationen zur Nutzung aus der PHPdoc des Callbacks aus. WP_CLI::add_command()
(Dok. (engl.)) wird sowohl für die Registrierung interner als auch für Befehle von Dritten verwendet.
/**
* Delete an option from the database.
*
* Returns an error if the option didn't exist.
*
* ## OPTIONS
*
* <key>
* : Key for the option.
*
* ## EXAMPLES
*
* $ wp option delete my_option
* Success: Deleted 'my_option' option.
*/
$delete_option_cmd = function( $args ) {
list( $key ) = $args;
if ( ! delete_option( $key ) ) {
WP_CLI::error( "Could not delete '$key' option. Does it exist?" );
} else {
WP_CLI::success( "Deleted '$key' option." );
}
};
WP_CLI::add_command( 'option delete', $delete_option_cmd );
WP-CLI enthält Dutzende Befehle. Es ist auch einfacher, als es aussieht, eigene Befehle zu erstellen. Lies dazu das Befehle-Kochbuch (engl.), um mehr zu erfahren. Stöbere in der internen API-Dokumentation (engl.), um eine Vielzahl hilfreicher Funktionen zu entdecken, die du in deinem eigenen WP-CLI Befehl benutzen kannst.
Mitwirken
Wir schätzen es sehr, dass du interessiert bist, an WP-CLI mitzuwirken. Nur wegen dir und der Community um dich herum ist WP-CLI so ein tolles Projekt.
Mitwirken beschränkt sich nicht nur auf’s Programmieren. Wir möchten dich dazu ermutigen, das beizutragen, was du am besten kannst. Sei es durch das Schreiben von Tutorials, das Vorstellen von WP-CLI bei einem lokalen Meetup, anderen Nutzern bei ihren Supportfragen zu helfen oder unsere Dokumentation zu pflegen.
Lies unsere Guidelines im Handbuch (engl.), um eine Einführung zu bekommen, wie du mitwirken kannst. Das Einhalten dieser Guidelines zeigt, dass du die Zeit respektierst, die andere in dieses Projekt investieren. Im Gegensatz werden andere Betreuer rund um den Globus diesen Respekt erwidern.
Projektleitung
WP-CLI hat einen Projektbetreuer: schlessera (engl.).
Gelegentlich vergeben wir Schreibzugriff an Mitwirkende, die über längere Zeit gezeigt haben, dass sie in der Lage sind, in das Projekt zu investieren und es voranzubringen.
Lies dir das Verwaltungsdokument im Handbuch (engl.) für mehr operative Informationen bezüglich dieses Projekts durch.
Credits
Neben den Bibliotheken, die in der composer.json-Datei erwähnt werden, benutzen wir Code oder Ideen von folgenden Projekten:
- Drush (engl.) für… viele Dinge
- wpshell (engl.) für
wp shell
- Regenerate Thumbnails für
wp media regenerate
- Search-Replace-DB (engl.) für
wp search-replace
- WordPress-CLI-Exporter (engl.) für
wp export
- WordPress-CLI-Importer (engl.) für
wp import
- wordpress-plugin-tests (engl.) für
wp scaffold plugin-tests