WP-CLI commands
Comandos WP-CLI para gestionar el plugin desde la línea de comandos. Automatiza las migraciones de datos y verifica la configuración.
Requisitos
Sección titulada «Requisitos»- WordPress con el plugin Polski for WooCommerce activo
- WP-CLI versión 2.5 o posterior
- Acceso SSH al servidor o un entorno de desarrollo local
wp polski migrate
Sección titulada «wp polski migrate»Comando de migración de datos para actualizaciones del plugin o traslados de la tienda.
Sintaxis
Sección titulada «Sintaxis»wp polski migrate [<migration>] [--dry-run] [--force] [--batch-size=<number>]Argumentos
Sección titulada «Argumentos»| Argumento | Tipo | Obligatorio | Descripción |
|---|---|---|---|
<migration> |
string | No | Nombre de la migración (omitir = todas las pendientes) |
Opciones
Sección titulada «Opciones»| Opción | Descripción |
|---|---|
--dry-run |
Mostrar el plan de migración sin ejecutar cambios |
--force |
Forzar la reejecución de una migración |
--batch-size=N |
Número de registros procesados por lote (predeterminado 100) |
Migraciones disponibles
Sección titulada «Migraciones disponibles»| Nombre de la migración | Descripción |
|---|---|
omnibus_price_history |
Migrar el historial de precios Omnibus a una nueva tabla |
checkboxes_v2 |
Actualizar la estructura de casillas a v2 |
gpsr_meta |
Migrar los datos GPSR al nuevo formato meta |
wishlist_to_db |
Mover las listas de deseos de usermeta a una tabla dedicada |
delivery_time_format |
Actualizar el formato del tiempo de entrega |
badges_cache_rebuild |
Reconstruir la caché de las etiquetas de producto |
search_index |
Reconstruir el índice de búsqueda AJAX |
Ejemplos
Sección titulada «Ejemplos»Mostrar las migraciones pendientes:
wp polski migrate --dry-runSalida:
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.Ejecutar todas las migraciones pendientes:
wp polski migrateSalida:
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.Ejecutar una migración concreta con un lote mayor:
wp polski migrate omnibus_price_history --batch-size=500Forzar la reejecución de una migración:
wp polski migrate search_index --forceGestión de errores
Sección titulada «Gestión de errores»Si una migración falla, el plugin:
- Muestra un mensaje de error detallado
- Revierte los cambios del lote actual
- Guarda un registro en
wp-content/debug.log(siWP_DEBUG_LOGestá habilitado) - Recuerda el punto de interrupción - la siguiente ejecución continúa desde el lugar del error
wp polski migrate omnibus_price_historySalida en caso de error:
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
Sección titulada «wp polski smoke-test»Comando que prueba la corrección de la configuración de la tienda. Comprueba todos los módulos del plugin, las páginas legales, las casillas y las integraciones.
Sintaxis
Sección titulada «Sintaxis»wp polski smoke-test [--module=<module>] [--format=<format>] [--verbose]Opciones
Sección titulada «Opciones»| Opción | Descripción |
|---|---|
--module=<module> |
Probar solo un módulo seleccionado |
--format=<format> |
Formato de salida: table (predeterminado), json, csv |
--verbose |
Información detallada de cada prueba |
Elementos probados
Sección titulada «Elementos probados»| Módulo | Pruebas |
|---|---|
compliance |
Páginas legales, casillas, GPSR, Omnibus, DSA |
checkout |
Botón de pedido, campos NIP, DOI |
prices |
Precios unitarios, IVA, tiempo de entrega |
food |
Valores nutricionales, alérgenos, Nutri-Score |
storefront |
Lista de deseos, comparador, búsqueda, filtros, slider |
integrations |
REST API, plantillas, caché, cron |
Ejemplos
Sección titulada «Ejemplos»Prueba completa:
wp polski smoke-testSalida:
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 OFFEstados:
- OK - la prueba se ha superado correctamente
- WARN - advertencia, requiere comprobación
- FAIL - error crítico
- OFF - módulo desactivado
Probar un módulo concreto con detalles:
wp polski smoke-test --module=compliance --verboseExportar a JSON (p. ej. para 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)" } ]}Integración con CI/CD
Sección titulada «Integración con CI/CD»El comando smoke-test devuelve el código de salida correspondiente:
| Código | Descripción |
|---|---|
| 0 | Todas las pruebas OK |
| 1 | Advertencias (WARN) |
| 2 | Errores críticos (FAIL) |
Ejemplo de uso en GitHub Actions:
- name: Polski smoke test run: wp polski smoke-test --format=json > smoke-test-results.json continue-on-error: falseEjemplo en un script bash:
#!/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
Sección titulada «Multisite»Los comandos WP-CLI son compatibles con las instalaciones WordPress Multisite. Usa la opción --url para dirigirte a un sitio concreto:
wp polski smoke-test --url=store1.yourdomain.comwp polski migrate --url=store2.yourdomain.comInformar de problemas: github.com/wppoland/polski/issues