WP-CLI commands
WP-CLI-Befehle zur Verwaltung des Plugins über die Befehlszeile. Automatisieren Sie Datenmigrationen und überprüfen Sie die Konfiguration.
Anforderungen
Abschnitt betitelt „Anforderungen“- WordPress mit aktivem Plugin Polski for WooCommerce
- WP-CLI Version 2.5 oder neuer
- SSH-Zugang zum Server oder eine lokale Entwicklungsumgebung
wp polski migrate
Abschnitt betitelt „wp polski migrate“Datenmigrationsbefehl für Plugin-Updates oder Shop-Umzüge.
wp polski migrate [<migration>] [--dry-run] [--force] [--batch-size=<number>]Argumente
Abschnitt betitelt „Argumente“| Argument | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
<migration> |
string | Nein | Name der Migration (weglassen = alle ausstehenden) |
Optionen
Abschnitt betitelt „Optionen“| Option | Beschreibung |
|---|---|
--dry-run |
Migrationsplan anzeigen, ohne Änderungen auszuführen |
--force |
Erneute Ausführung einer Migration erzwingen |
--batch-size=N |
Anzahl der pro Stapel verarbeiteten Datensätze (Standard 100) |
Verfügbare Migrationen
Abschnitt betitelt „Verfügbare Migrationen“| Name der Migration | Beschreibung |
|---|---|
omnibus_price_history |
Omnibus-Preisverlauf in neue Tabelle migrieren |
checkboxes_v2 |
Checkbox-Struktur auf v2 aktualisieren |
gpsr_meta |
GPSR-Daten in neues Meta-Format migrieren |
wishlist_to_db |
Wunschlisten von usermeta in eine dedizierte Tabelle verschieben |
delivery_time_format |
Format der Lieferzeit aktualisieren |
badges_cache_rebuild |
Cache der Produkt-Badges neu aufbauen |
search_index |
AJAX-Suchindex neu aufbauen |
Beispiele
Abschnitt betitelt „Beispiele“Ausstehende Migrationen anzeigen:
wp polski migrate --dry-runAusgabe:
Pending migrations: 1. omnibus_price_history - Price history migration (approx. 5200 records) 2. checkboxes_v2 - Checkbox update (3 records)Total: 2 migrationsDry-run mode - no changes were made.Alle ausstehenden Migrationen ausführen:
wp polski migrateAusgabe:
Executing migration: omnibus_price_history... Processing batch 1/52 (100 records)... Processing batch 2/52 (100 records)... ... Migration omnibus_price_history completed. Migrated 5200 records.
Executing migration: checkboxes_v2... Migration checkboxes_v2 completed. Migrated 3 records.
All migrations completed successfully.Eine bestimmte Migration mit größerem Stapel ausführen:
wp polski migrate omnibus_price_history --batch-size=500Erneute Ausführung einer Migration erzwingen:
wp polski migrate search_index --forceFehlerbehandlung
Abschnitt betitelt „Fehlerbehandlung“Wenn eine Migration fehlschlägt, verhält sich das Plugin wie folgt:
- Es zeigt eine detaillierte Fehlermeldung an
- Es macht die Änderungen des aktuellen Stapels rückgängig
- Es speichert ein Log in
wp-content/debug.log(wennWP_DEBUG_LOGaktiviert ist) - Es merkt sich den Haltepunkt - der nächste Lauf setzt an der Fehlerstelle fort
wp polski migrate omnibus_price_historyAusgabe bei Fehler:
Executing migration: omnibus_price_history... Processing batch 23/52 (100 records)... ERROR: Cannot save record #2345 - data integrity violation. Batch 23 rollback executed. Migration interrupted. Run again to continue from batch 23.wp polski smoke-test
Abschnitt betitelt „wp polski smoke-test“Befehl zum Testen der Korrektheit der Shop-Konfiguration. Prüft alle Plugin-Module, rechtlichen Seiten, Checkboxen und Integrationen.
wp polski smoke-test [--module=<module>] [--format=<format>] [--verbose]Optionen
Abschnitt betitelt „Optionen“| Option | Beschreibung |
|---|---|
--module=<module> |
Nur ein ausgewähltes Modul testen |
--format=<format> |
Ausgabeformat: table (Standard), json, csv |
--verbose |
Detaillierte Informationen zu jedem Test |
Getestete Elemente
Abschnitt betitelt „Getestete Elemente“| Modul | Tests |
|---|---|
compliance |
Rechtliche Seiten, Checkboxen, GPSR, Omnibus, DSA |
checkout |
Bestellbutton, NIP-Felder, DOI |
prices |
Grundpreise, MwSt., Lieferzeit |
food |
Nährwerte, Allergene, Nutri-Score |
storefront |
Wunschliste, Vergleich, Suche, Filter, Slider |
integrations |
REST API, Templates, Cache, Cron |
Beispiele
Abschnitt betitelt „Beispiele“Vollständiger Test:
wp polski smoke-testAusgabe:
Polski for WooCommerce - Smoke Test====================================
+---------------------+---------------------------+--------+| Module | Test | Status |+---------------------+---------------------------+--------+| compliance | Store terms | OK || compliance | Privacy policy | OK || compliance | Checkout checkboxes | OK || compliance | GPSR data | WARN || compliance | Omnibus price | OK || compliance | DSA form | OK || checkout | Button label | OK || checkout | NIP field | OK || checkout | Double opt-in | OFF || prices | Unit price | OK || prices | VAT information | OK || prices | Delivery time | WARN || storefront | AJAX search | OK || storefront | AJAX filters | OK || integrations | REST API | OK || integrations | Theme templates | OK || integrations | Transient cache | OK || integrations | WP-Cron | OK |+---------------------+---------------------------+--------+
Result: 15 OK, 2 WARN, 1 OFFStatus:
- OK - Test erfolgreich bestanden
- WARN - Warnung, muss geprüft werden
- FAIL - kritischer Fehler
- OFF - Modul deaktiviert
Ein bestimmtes Modul mit Details testen:
wp polski smoke-test --module=compliance --verboseExport nach JSON (z. B. für CI/CD):
wp polski smoke-test --format=json{ "timestamp": "2025-06-15T12:00:00+02:00", "total_tests": 18, "passed": 15, "warnings": 2, "failed": 0, "disabled": 1, "tests": [ { "module": "compliance", "test": "terms_page", "status": "ok", "message": "Store terms published (ID: 45)" } ]}CI/CD-Integration
Abschnitt betitelt „CI/CD-Integration“Der Befehl smoke-test gibt den entsprechenden Exit-Code zurück:
| Code | Beschreibung |
|---|---|
| 0 | Alle Tests OK |
| 1 | Warnungen (WARN) |
| 2 | Kritische Fehler (FAIL) |
Beispiel für die Verwendung in GitHub Actions:
- name: Polski smoke test run: wp polski smoke-test --format=json > smoke-test-results.json continue-on-error: falseBeispiel in einem Bash-Skript:
#!/bin/bashwp polski smoke-test --format=json > /tmp/smoke-test.json
EXIT_CODE=$?if [ $EXIT_CODE -eq 2 ]; then echo "Polski tests FAILED - check configuration" exit 1elif [ $EXIT_CODE -eq 1 ]; then echo "Polski tests WARN - check warnings"fiMultisite
Abschnitt betitelt „Multisite“Die WP-CLI-Befehle unterstützen WordPress-Multisite-Installationen. Verwenden Sie die Flag --url, um eine bestimmte Website anzusprechen:
wp polski smoke-test --url=store1.yourdomain.comwp polski migrate --url=store2.yourdomain.comProbleme melden: github.com/wppoland/polski/issues