WP-CLI commands
WP-CLI-Befehle zur Verwaltung des Plugins über die Befehlszeile. Automatisieren Sie Datenmigrationen und überprüfen Sie die Konfiguration.
Anforderungen
Section titled “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
Section titled “wp polski migrate”Datenmigrationsbefehl für Plugin-Updates oder Shop-Umzüge.
Syntax
Section titled “Syntax”wp polski migrate [<migration>] [--dry-run] [--force] [--batch-size=<number>]Argumente
Section titled “Argumente”| Argument | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
<migration> | string | Nein | Name der Migration (weglassen = alle ausstehenden) |
Optionen
Section titled “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
Section titled “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
Section titled “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
Section titled “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
Section titled “wp polski smoke-test”Befehl zum Testen der Korrektheit der Shop-Konfiguration. Prüft alle Plugin-Module, rechtlichen Seiten, Checkboxen und Integrationen.
Syntax
Section titled “Syntax”wp polski smoke-test [--module=<module>] [--format=<format>] [--verbose]Optionen
Section titled “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
Section titled “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
Section titled “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
Section titled “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
Section titled “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