- Eine Kommandozeile für WordPress: wp-cli
- wp-cli – die Basics
- WordPress installieren mit wp-cli
- Schnellzugriff auf WordPress-Installationen mit Aliases
- Versionen! – Software-Updates mit wp-cli
- Und sonst noch?
Bisher musste man sich im WordPress-Installationsverzeichnis befinden, oder mit der Option --path=/path/to/wordpresssite
das Installationsverzeichnis angegeben werden. Aliases erleichtern die Arbeit mit wp-cli enorm und erlauben den transparenten Schnellzugriff auf WordPress-Installationen von „überall“ – egal von welchem Ordner des selben Rechners oder von einem entfernten Rechner aus.
Ein Alias beginnt mit „@“ und wird als erste Argument des wp-cli-Befehls angegeben.
$ wp @blog core version
5.3
Aliases werden in einer Konfigurationsdatei definiert, dabei werden nacheinander die folgenden Dateien ausgewertet:
<project folder>/wp-cli.local.yml
,<project folder>/wp-cli.yml
oder~/.wp-cli/config.yml
Im einfachsten Fall wird zu jedem Alias der Pfad zum Installationsverzeichnis angegeben. Ebenso kann ein Alias als Gruppierung anderer Aliases definiert werden – im folgenden Beispiel der Alias @project
. Das wp-cli-Kommando wird dann auf allen WordPress-Installationen ausgeführt, die mit diesem Alias referenziert werden.
@live:
path: /var/www/bei3.net/
@beta:
path: /var/www/beta.bei3.net/
@project:
@live
@beta
Wenn ein Kommando auf einem entfernten Server ausgeführt werden soll, dann muss auch der ssh-Id angegeben werden. Dabei kann ein Eintrag aus der ssh-Konfiguration (~/.ssh/config
) eingetragen werden.
@site1:
ssh: site1
path: /var/www/site1.de/
@site2:
ssh: wp@site2.de
path: public_html/
@project:
@site1
@site2
wp-cli bietet auch die notwendigen Befehle, um Aliases zu verwalten. Sie können mit cli alias add
hinzugefügt, mit cli alias delete
gelöscht, mit cli alias update
aktualisiert, alle mit cli alias list
und ein Einzelner mit mit cli alias get
angezeigt werden.
$ wp cli alias add @live --set-ssh=myserver \
--set-path=/var/www/bei3.net/ --set-user=wp
Success: Added '@live' alias.
$ wp cli alias add @beta --set-ssh=myserver \
--set-path=/var/www/beta.bei3.net/ --set-user=wp
Success: Added '@beta' alias.
$ wp cli alias add --grouping=@live,@beta @b3
Success: Added '@b3' alias.
$ wp cli alias list
@live:
path: /var/www/bei3.net/
ssh: myserver
user: wp
@beta:
path: /var/www/beta.bei3.net/
ssh: myserver
user: wp
@b3:
@live
@beta
$ wp cli alias update @live –set-path=/var/www/virtual/bei3.net/
Success: Updated '@live' alias.
$ wp @b3 core version
@live
5.3
@beta
5.3
$ wp cli alias delete @beta
Success: Deleted '@beta' alias.
$ wp cli alias get @live
path: /var/www/virtual/bei3.net/
ssh: myserver
user: wp
So habe ich auf jedem Server mit WordPress-Installation den Alias @live
zur Produktiv-Website festgelegt, manchmal auch den Alias @beta
für eine Testinstallation. Auf meinem lokalen Rechner habe ich für jede WordPress-Installation einen Alias mit plausiblem Bezeichner (zum Beispiel @blog
für dieses Blog) und einen Alias mit Suffix _beta
für die eventuell vorhandene Testinstallation (zum Beispiel @blog_beta
).
Der Alias @all
führt das Kommando auf allen definierten Aliases nacheinander aus.
$ wp @all plugin update redirection
<...>
Schaut Euch die Doku zu Aliases für weitere Informationen an. Erfahrenen Drupal-Anwendern ist das Konzept der Aliases als drush site alias bekannt.