Websites und Anwendungen

WP-CLI: WordPress über das Terminal verwalten

Geprüft am 9 Min. Lesezeit wordpress wp cli

Mit WP-CLI fragen Sie WordPress über das Terminal ab und verwalten es. Verwenden Sie es mit dem Benutzer des Kontos und in der richtigen Installation: Viele Befehle können Daten ändern, ohne ein Bestätigungsformular anzuzeigen.

WP-CLI installieren

Melden Sie sich per SSH an und prüfen Sie zuerst, ob es verfügbar ist:

command -v wp
wp --info

Fehlt es, folgen Sie der offiziellen Installation mit einem kompatiblen PHP. Für die Installation per Composer in Ihrem Konto verwenden Sie das vollständige Paket:

composer global require wp-cli/wp-cli-bundle
composer global config bin-dir --absolute

Der zweite Befehl zeigt den Ordner der ausführbaren Dateien. Wird wp nicht gefunden, fügen Sie ihn dem PATH hinzu und prüfen Sie erneut wp --info. Das PHP des Terminals kann vom Web-PHP abweichen; ignorieren Sie keine Composer-Anforderungen, um die Installation zu erzwingen.

Bevor Sie Befehle ausführen, die Daten ändern

Wechseln Sie in das richtige Stammverzeichnis und prüfen Sie, um welche Installation es sich handelt:

pwd
wp core version
wp option get home
wp option get siteurl

Erstellen Sie ein Backup von Dateien und Datenbank. Dieses Beispiel exportiert SQL in ein privates Verzeichnis außerhalb des öffentlichen Stammverzeichnisses; ersetzen Sie den Pfad vor der Ausführung und verwenden Sie keinen bereits vorhandenen Backup-Namen erneut:

umask 077
wp db export /RUTA_PRIVADA_FUERA_DEL_WEBROOT/wp-antes-del-cambio.sql
sha256sum /RUTA_PRIVADA_FUERA_DEL_WEBROOT/wp-antes-del-cambio.sql

Bewahren Sie Datei und Prüfsumme außerhalb des Hostings auf und testen Sie die Wiederherstellung. Die Prüfsumme dient dazu, Änderungen an der Datei zu erkennen; sie beweist nicht, dass das Backup vollständig oder wiederherstellbar ist.

Proben Sie Änderungen auf einem Klon, verwenden Sie --dry-run, wenn verfügbar, und prüfen Sie die Reichweite, bevor Sie es weglassen. Gibt es laufend Schreibvorgänge, planen Sie, wie Sie sie bei einer Rückkehr nicht verlieren.

WordPress installieren

Laden Sie den Core in ein leeres, geschütztes Ziel herunter:

wp core download

Legen Sie vorher eine eigene Datenbank und einen eigenen SQL-Benutzer an. Ersetzen Sie die Werte des Beispiels und lassen Sie das Passwort über die Eingabeaufforderung abfragen:

wp config create --dbname=base_datos \
  --dbuser=usuario \
  --dbhost=localhost \
  --dbprefix=wp_ \
  --prompt=dbpass

Richten Sie die Website mit einem eigenen Administratorkonto ein:

wp core install --url=https://dominio.example \
  --title=Sitio \
  --admin_user=administrador_ejemplo \
  --admin_email=administrador@dominio.example \
  --prompt=admin_password

Domains und Benutzer sind Beispiele. Geben Sie Passwörter nicht als Argumente an und veröffentlichen Sie sie nicht in Logs. Prüfen Sie HTTPS und Zugang, bevor Sie den Schutz des Ziels entfernen.

WordPress neu installieren

Die Neuinstallation muss Version und Sprache beibehalten, wenn Sie nur Dateien reparieren möchten. Ersetzen Sie die geprüften Platzhalter:

wp core download --version=VERSION_INSTALADA --locale=LOCALE_INSTALADO --skip-content --force
wp core verify-checksums --include-root

--force überschreibt die Dateien des Pakets, entfernt aber nicht jede fremde Datei. Ohne ausdrückliche Version laden Sie womöglich eine andere herunter. Das bereinigt für sich keinen Einbruch in Plugins, Benutzern oder Datenbank.

Die Haupt-URL von WordPress ändern

Bei einer einfachen Installation, in der WordPress und die öffentliche Website dasselbe Stammverzeichnis teilen, ändern diese Befehle die Werte in der Datenbank:

wp option update home 'https://nuevodominio.example'
wp option update siteurl 'https://nuevodominio.example'

Liegt der Core in einem anderen Unterverzeichnis, können beide Werte unterschiedlich sein. Prüfen Sie auch Konstanten in wp-config.php, Multisite, DNS und Zertifikate. Optionen zu ändern ersetzt nicht alle Verweise im Inhalt.

Plugins auflisten

wp plugin list

Prüfen Sie Slug, Status und Version. Verhindert ein Plugin den Start von WordPress, unterstützen manche Abfragen --skip-plugins; Mu-Plugins können trotzdem geladen werden. Das ist keine Reparatur der Komponente.

Plugins installieren

Suchen Sie den offiziellen Slug und prüfen Sie die Kompatibilität vor der Installation:

wp plugin search 'termino de busqueda'
wp plugin install SLUG_DEL_PLUGIN

Installieren und Aktivieren sind verschiedene Aktionen. Fügen Sie --activate nur hinzu, wenn Sie diese Komponente aktivieren möchten und ihre Abhängigkeiten geprüft haben. Verwenden Sie für ein kommerzielles ZIP das überprüfbare Paket des Anbieters; legen Sie keine Download-Schlüssel im Verlauf offen.

Ein oder mehrere Plugins deaktivieren

wp plugin deactivate SLUG_DEL_PLUGIN

Ersetzen Sie den Platzhalter durch den echten Slug. --all betrifft alle Plugins im Geltungsbereich: Das kann Zahlungen, Sicherheit oder Formulare stoppen. Prüfen Sie bei Multisite zusätzlich die netzwerkweite Aktivierung. Deaktivieren Sie in einem geöffneten Shop nicht massenhaft Plugins, um eine Vermutung zu testen.

Plugins aktualisieren

wp plugin update SLUG_DEL_PLUGIN --dry-run

Prüfen Sie die vorgeschlagenen Updates, erstellen Sie das Backup und proben Sie die Änderung. Um sie anzuwenden, wiederholen Sie den Befehl ohne --dry-run nur im Rahmen des geprüften Vorgehens. Prüfen Sie danach die Funktion des Plugins; eine erfolgreiche Ausgabe beweist nicht, dass der Geschäftsablauf funktioniert.

Massenhaftes Suchen und Ersetzen in der Datenbank

WP-CLI kann mit serialisierten Daten umgehen, aber die Reichweite bleibt entscheidend. Dieses Beispiel beschränkt die Simulation auf zwei Tabellen; ersetzen Sie deren Namen, wenn das Präfix anders ist:

wp search-replace 'https://antiguo.example' 'https://nuevo.example' wp_posts wp_postmeta \
  --skip-columns=guid --precise --report-changed-only --dry-run

Prüfen Sie den Bericht und Stichproben, bevor Sie den Befehl ohne --dry-run wiederholen. Das ist keine vollständige Migration: Optionen, Plugin-Tabellen und ein Multisite-Netzwerk können eine andere Behandlung erfordern. Die GUIDs sollten beim Umzug der Website nicht routinemäßig geändert werden. Lesen Sie die Referenz zu search-replace.

Reguläre Ausdrücke und HTML-Inhalte

--regex unterstützt Muster, macht einen regulären Ausdruck aber nicht zu einem HTML-Parser. Das alte Beispiel zum Entfernen von Iframes konnte andere Blöcke treffen oder Varianten übersehen; führen Sie es nicht massenhaft ohne geprüfte Auswahl aus.

Um einen bestimmten Iframe zu entfernen, ermitteln Sie zuerst die Beiträge und das Feld und ändern Sie den genauen Block über die API oder den Editor der Anwendung. Müssen Sie variables HTML automatisiert bearbeiten, bereiten Sie ein Skript vor, das das Element und seine URL erkennt, und vergleichen Sie Vorher und Nachher an Stichproben, einschließlich Fällen, die sich nicht ändern dürfen. Eine Anzahl von Treffern reicht nicht.

Die Datenbank importieren und exportieren

wp db export und wp db import arbeiten mit der konfigurierten Verbindung. Ein Import kann Tabellen ersetzen oder Daten vermischen. Testen Sie die Wiederherstellung in einer neuen Datenbank, von einem Klon aus, der ausdrücklich auf sie zeigt; prüfen Sie Schema, Inhalt und Funktionen vor der endgültigen Umstellung.

Lassen Sie die bisherige Datenbank während des Wiederherstellungszeitraums unverändert und bewahren Sie SQL außerhalb öffentlicher Verzeichnisse auf. Importieren Sie kein altes Backup über einen Shop, der weiterhin Bestellungen erhält.

wp-cron-Ereignisse auflisten

wp cron event list

Zeigt geplante Ereignisse, nächste Ausführung und Wiederholung. Es ist kein Verlauf abgeschlossener Ausführungen und beweist nicht, dass eine Aufgabe erfolgreich beendet wurde. Gleichen Sie überfällige Ereignisse mit dem Cron-Mechanismus und den Protokollen der Anwendung ab; Aufgaben manuell auszuführen kann E-Mails senden oder andere Aktionen auslösen.

Das könnte Ihnen auch helfen

Stimmt etwas nicht oder hat sich etwas geändert? Erzählen Sie es uns, und wir prüfen es.