Anleitung zur Fehlerbehebung


Bevor Sie beginnen, ein neues Problem im GitHubGitHub GitHub ist eine Website, die eine Online-Implementierung von Git-Repositories anbietet, die von anderen Entwicklern einfach geteilt, kopiert und geändert werden können. Öffentliche Repositories können kostenlos gehostet werden, für private Repositories ist ein kostenpflichtiges Abonnement erforderlich. GitHub führte das Konzept des „Pull Requests“ ein, bei dem von Mitwirkenden in Branches vorgenommene Codeänderungen überprüft und diskutiert werden können, bevor sie vom Besitzer des Repositorys zusammengeführt werden. https://github.com/-Repository zu melden, überprüfen Sie Ihre lokale Installation, da bestimmte Einstellungen typischerweise zu einem unerwarteten Ergebnis Ihrer WP-CLIWP-CLI WP-CLI ist die Kommandozeilenschnittstelle für WordPress, die verwendet wird, um administrative und Entwicklungsaufgaben programmatisch auszuführen. Die Projektseite ist http://wp-cli.org/ https://make.wordpress.org/cli/-Befehle führen können.

Wie erhalte ich ausführlichere Informationen über meine WP-CLI-Installation?

WP-CLI bietet den Befehl wp --info, der Ihnen viele Informationen über die Installationsumgebung Ihrer WP-CLI liefert. Die Ausgabe zeigt Ihnen,
* auf welchem Betriebssystem und welcher Shell Sie arbeiten
* welche PHPPHP PHP (rekursives Akronym für PHP: Hypertext Preprocessor) ist eine weit verbreitete, quelloffene, universell einsetzbare Skriptsprache, die sich besonders für die Webentwicklung eignet und in HTML eingebettet werden kann. https://www.php.net/manual/en/index.php-Binärdatei zum Ausführen von WP-CLI verwendet wird
* welche PHP-Version verwendet wird
* wo sich das Stammverzeichnis von WP-CLI befindet
* wo sich das Vendor-Verzeichnis von WP-CLI befindet
* mit welcher WP-CLI-Binärdatei Sie derzeit arbeiten (Phar-Pfad)
* wo WP-CLI-Pakete gespeichert werden
* wo sich globale und projektbezogene Konfigurationsdateien für WP-CLI befinden und
* welche Version von WP-CLI Sie verwenden.

Was sollte ich tun, bevor ich mit der Fehlersuche beginne?

Bevor Sie mit der Fehlersuche beginnen, stellen Sie sicher, dass Sie die neueste Version von WP-CLI verwenden. Die neueste Version hat das von Ihnen festgestellte Problem möglicherweise bereits behoben. Der Befehl wp cli update aktualisiert Ihre WP-CLI-Version oder bestätigt, dass Sie bereits die neueste Version verwenden. Wenn die Installation hängen bleibt, stellen Sie bitte sicher, dass Sie über SSLSSL Secure Socket Layer – Verschlüsselung vom Server zum Browser und zurück. Verhindert, dass neugierige Blicke sehen können, was Sie zwischen Ihrem Browser und dem Server senden. (Port 443) und Git (Port 9418) ausgehende Verbindungen zu GitHub herstellen dürfen.

Was sollte ich tun, wenn die WP-CLI-Ausgabe anders als erwartet ist?

Bevor Sie mit der Untersuchung eines Fehlers beginnen, sollten Sie sich der Faktoren bewusst sein, die das Standardverhalten von WP-CLI ändern können, und wissen, wie Sie überprüfen können, ob sie die Ursache des Problems sein könnten. Es gibt fünf Hauptsubsysteme zur Änderung dieses Standardverhaltens: Umgebungsvariablen, Konfigurationsdateien, WP-CLI-Pakete, die Datei wp-config.php und WordPress-Erweiterungen (Plugins, Themes, Must-use-Plugins, Drop-ins).

Umgebungsvariablen

Die Einrichtung Ihrer Arbeitsumgebung ist eine Voraussetzung für die Ausführung von WP-CLI. Sie können Ihre aktuellen Umgebungseinstellungen mit dem Shell-Befehl env überprüfen.

Wenn Sie WP-CLI remote über SSHSSH Secure Shell – ein Protokoll für die sichere Verbindung mit einem entfernten System zusätzlich zu oder anstelle eines Passworts. ausführen möchten, muss der Befehl wp im Pfad des entfernten Servers verfügbar sein. Das Verhalten von WP-CLI kann zur Laufzeit auch durch die Verwendung von Umgebungsvariablen geändert werden:

  • WP_CLI_CACHE_DIR – Verzeichnis zum Speichern des WP-CLI-Dateicaches. Standard ist ~/.wp-cli/cache/.
  • WP_CLI_CONFIG_PATH – Pfad zur globalen config.yml-Datei. Standard ist ~/.wp-cli/config.yml.
  • WP_CLI_CUSTOM_SHELL – Ermöglicht dem Benutzer, die standardmäßig verwendete /bin/bash-Shell zu überschreiben.
  • WP_CLI_DISABLE_AUTO_CHECK_UPDATE – Deaktiviert die automatischen Update-Prüfungen von WP-CLI.
  • WP_CLI_DOCKER_NO_TTY – Ignoriert den erkannten TTY-Status und entfernt das Flag --tty aus docker exec, wenn WP-CLI über SSH gegen einen Docker-Container ausgeführt wird.
  • WP_CLI_DOCKER_NO_INTERACTIVE – Ignoriert den erkannten TTY-Status und entfernt das Flag --interactive aus docker exec, wenn WP-CLI über SSH gegen einen Docker-Container ausgeführt wird.
  • WP_CLI_PACKAGES_DIR – Verzeichnis zum Speichern von Paketen, die über die Paketverwaltung von WP-CLI installiert wurden. Standard ist ~/.wp-cli/packages/.
  • WP_CLI_PHP – Pfad zur zu verwendenden PHP-Binärdatei, wenn der Systemstandard überschrieben wird (funktioniert nur bei einer Nicht-Phar-Installation).
  • WP_CLI_PHP_ARGS – An die PHP-Binärdatei zu übergebende Argumente beim Aufruf von WP-CLI (funktioniert nur bei einer Nicht-Phar-Installation).
  • WP_CLI_SSH_PRE_CMD – Bei Verwendung von --ssh=<ssh> einen Befehl ausführen, bevor WP-CLI WP-CLI auf dem entfernten Server aufruft.
  • WP_CLI_SSH_BINARY – Bei Verwendung von --ssh=<ssh> ist dies der Befehl, der auf dem entfernten Rechner anstelle von wp aufgerufen wird.
  • WP_CLI_STRICT_ARGS_MODE – Vermeidet Mehrdeutigkeiten, indem WP-CLI angewiesen wird, alle Argumente vor dem Befehl als global und nach dem Befehl als lokal zu behandeln.
  • WP_CLI_SUPPRESS_GLOBAL_PARAMS – Auf true setzen, um die Anzeige der globalen Parameter am Ende des Hilfebildschirms zu überspringen. Dies spart fortgeschrittenen Benutzern Platz auf dem Bildschirm.
  • WP_CLI_FORCE_USER_LOGIN – Auf 1 setzen, damit der für das Flag --user angegebene Wert als Login statt als ID interpretiert wird, um mehrdeutige Typen zu vermeiden.
  • WP_CLI_EARLY_REQUIRE – Eine oder mehrere benutzerdefinierte PHP-Dateien (durch Kommas getrennt) früh im Bootstrap-Prozess laden.
  • WP_CLI_REQUIRE – Eine oder mehrere benutzerdefinierte PHP-Dateien (durch Kommas getrennt) nach dem Bootstrap-Prozess laden. Dies hat denselben Effekt wie --require in der Kommandozeile oder ein require-Mapping in einer wp-cli.yml-Konfigurationsdatei.
  • WP_CLI_USER_AGENT – Legt den Wert $_SERVER['HTTP_USER_AGENT'] fest, auf den sich einige Plugins und Tools verlassen.

Um eine Umgebungsvariable bei Bedarf zu setzen, können Sie die Definition der Umgebungsvariable vor den auszuführenden WP-CLI-Befehl setzen (z. B. EDITOR=vim wp post edit 1); zum Überschreiben von Umgebungsvariablen verwenden Sie export VARIABLE=value in Ihrer ~/.bashrc oder ~.zhsrc.

WP-CLI-Konfigurationsdateien

Konfigurationsdateien ermöglichen es Ihnen, das Verhalten von WP-CLI anzupassen, um es an Ihre persönlichen Anforderungen oder die Ihres Projekts anzupassen. Wenn die Konfigurationsdatei fehlerhaft ist oder unerwünschte Änderungen am Standardverhalten enthält, wird die Ausgabe von WP-CLI den Fehler höchstwahrscheinlich widerspiegeln.

Beachten Sie, dass eine Projektkonfigurationsdatei Einstellungen in einer globalen Konfigurationsdatei überschreiben kann.

Benennen Sie Ihre Konfigurationsdatei(en) um oder löschen Sie sie und vergleichen Sie das Ergebnis, um herauszufinden, ob eine Konfigurationseinstellung das Problem verursacht haben könnte.

WP-CLI-Pakete

WP-CLI-Pakete sind von der Community gepflegte Projekte, die auf WP-CLI basieren. Sie können WP-CLI-Befehle enthalten, aber WP-CLI auch lediglich auf irgendeine Weise erweitern. Auch wenn WP-CLI einwandfrei funktioniert, kann ein fehlerhaftes Paket unerwartete Ergebnisse verursachen. Um das Laden aller installierten Pakete zu überspringen, verwenden Sie wp --skip-packages.

WordPress-Konfigurationsdatei (wp-config.php)

Fehler können entstehen, wenn wp-config.php über das von WP-CLI unterstützte Maß hinaus verschoben oder bearbeitet wird. Wenn ein Parse-Fehler auftritt, überprüfen Sie die Dateikodierung Ihrer wp-config.php (UTF-8 ohne BOM).

Stellen Sie sicher, dass die Zeile require_once(ABSPATH . 'wp-settings.php'); in der Datei wp-config.php erhalten bleibt, und ändern Sie wp-config.php nicht über Konstantendefinitionen hinaus. Wenn Sie WordPress-Funktionen innerhalb von wp-config.php aufrufen, bricht PHP mit einem schwerwiegenden Fehler ab.

Wenn Sie $_SERVER['HTTP_HOST'] in Ihrer wp-config.php verwenden möchten, müssen Sie im WP-CLI-Kontext einen Standardwert festlegen:

if ( defined( 'WP_CLI' ) && WP_CLI && ! isset( $_SERVER['HTTP_HOST'] ) ) {
    $_SERVER['HTTP_HOST'] = `example.com';
}

Verwenden Sie anstelle von $_SERVER['document_root'] dirname( __FILE__ ) oder etwas Ähnliches.

WordPress-Erweiterungen

WordPress-Themes und -Plugins können mit dem Ladeprozess von WP-CLI in Konflikt geraten oder ihn beeinträchtigen, z. B. indem sie Benutzer umleiten. Sie treffen häufig Annahmen, die im WP-CLI-Kontext nicht zutreffen, etwa die Verwendung des Hostnamens der aktuellen Anfrage (ein Konzept, das im Kommandozeilenkontext nicht existiert).

Sie können einzelne Plugins und Themes umgehen (z. B. --skip-plugins=akismet) oder sie vollständig überspringen (wp --skip-plugins --skip-themes).

Was sollte ich tun, wenn WP-CLI einen Fehler meldet?

Häufige Probleme sind auf Änderungen in Ihrer wp-config.php oder der Webserverkonfiguration zurückzuführen. Der Abschnitt „Häufige Probleme“ des Handbuchs listet die häufigsten Fehlermeldungen auf und erklärt, wie diese Fehler behandelt werden.

Versuchen Sie, das Problem in einer frischen WordPress-Installation mit einem Standard-Theme (Twenty …) und ohne installierte Plugins zu reproduzieren. Wenn das Problem nur in einer benutzerdefinierten Umgebung reproduziert werden kann, liegt ein Fehler in Ihrer Umgebung vor, nicht in WP-CLI. Stellen Sie außerdem sicher, dass Sie den Debugging-Modus von WordPress aktivieren, indem Sie die Konstante define( 'WP_DEBUG', true ); in Ihrer wp-config.php setzen. Dies kann Probleme mit Ihrer bestehenden WordPress-Installation aufdecken, die nicht durch WP-CLI verursacht werden.

Zusätzlich können Sie den globalen WP-CLI-Parameter --debug verwenden, um alle PHP-Fehler anzuzeigen und die Ausführlichkeit des WP-CLI-Bootstraps zu erhöhen.

Ich habe alles oben Genannte überprüft, habe aber weiterhin ein Problem. Wo kann ich Probleme melden?

Wenn Sie glauben, einen Fehler gefunden zu haben, würden wir gerne davon erfahren, damit wir ihn beheben können.

Die Fehlermeldung für WP-CLI wird auf GitHub abgewickelt. Bevor Sie ein neues Problem erstellen, suchen Sie bitte nach bestehenden Problemen, um festzustellen, ob es bereits eine Lösung dafür gibt. Wenn es für Ihren Fehler kein offenes oder behobenes Problem gibt, befolgen Sie bitte unsere Richtlinien zum Einreichen eines Fehlerberichts, damit er zeitnah bearbeitet werden kann. Die Bereitstellung der Zusammenfassung, der Reproduktionsschritte, der Umgebungsdetails und der unten genannten weiteren Angaben trägt dazu bei, dass Sie einen vollständigen Fehlerbericht einreichen.

Bitte stellen Sie uns Folgendes zur Verfügung:
* eine Zusammenfassung des Problems in erzählender Form,
* eine detaillierte und spezifische Liste der Schritte zur Reproduktion des Problems,
* Details zu der Umgebung, in der Sie arbeiten,
* eine Beschreibung, wie sich der Fehler auf Ihre Nutzung auswirkt (d. h. erwartete Ergebnisse im Vergleich zu den tatsächlichen Ergebnissen), einschließlich * Schweregrad,
* mögliche Workarounds und
* relevante Diagnosedaten, wie Absturzberichte, Stacktraces oder Debug-Ausgaben.

Eine ausführliche Beschreibung dieser Angaben für einen Fehlerbericht finden Sie in den Richtlinien zum Einreichen eines Fehlerberichts.