Skip to content

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.

  • 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

Comando de migración de datos para actualizaciones del plugin o traslados de la tienda.

Terminal window
wp polski migrate [<migration>] [--dry-run] [--force] [--batch-size=<number>]
ArgumentoTipoObligatorioDescripción
<migration>stringNoNombre de la migración (omitir = todas las pendientes)
OpciónDescripción
--dry-runMostrar el plan de migración sin ejecutar cambios
--forceForzar la reejecución de una migración
--batch-size=NNúmero de registros procesados por lote (predeterminado 100)
Nombre de la migraciónDescripción
omnibus_price_historyMigrar el historial de precios Omnibus a una nueva tabla
checkboxes_v2Actualizar la estructura de casillas a v2
gpsr_metaMigrar los datos GPSR al nuevo formato meta
wishlist_to_dbMover las listas de deseos de usermeta a una tabla dedicada
delivery_time_formatActualizar el formato del tiempo de entrega
badges_cache_rebuildReconstruir la caché de las etiquetas de producto
search_indexReconstruir el índice de búsqueda AJAX

Mostrar las migraciones pendientes:

Terminal window
wp polski migrate --dry-run

Salida:

Pending migrations:
1. omnibus_price_history - Price history migration (approx. 5200 records)
2. checkboxes_v2 - Checkbox update (3 records)
Total: 2 migrations
Dry-run mode - no changes were made.

Ejecutar todas las migraciones pendientes:

Terminal window
wp polski migrate

Salida:

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:

Terminal window
wp polski migrate omnibus_price_history --batch-size=500

Forzar la reejecución de una migración:

Terminal window
wp polski migrate search_index --force

Si una migración falla, el plugin:

  1. Muestra un mensaje de error detallado
  2. Revierte los cambios del lote actual
  3. Guarda un registro en wp-content/debug.log (si WP_DEBUG_LOG está habilitado)
  4. Recuerda el punto de interrupción - la siguiente ejecución continúa desde el lugar del error
Terminal window
wp polski migrate omnibus_price_history

Salida 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.

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.

Terminal window
wp polski smoke-test [--module=<module>] [--format=<format>] [--verbose]
OpciónDescripción
--module=<module>Probar solo un módulo seleccionado
--format=<format>Formato de salida: table (predeterminado), json, csv
--verboseInformación detallada de cada prueba
MóduloPruebas
compliancePáginas legales, casillas, GPSR, Omnibus, DSA
checkoutBotón de pedido, campos NIP, DOI
pricesPrecios unitarios, IVA, tiempo de entrega
foodValores nutricionales, alérgenos, Nutri-Score
storefrontLista de deseos, comparador, búsqueda, filtros, slider
integrationsREST API, plantillas, caché, cron

Prueba completa:

Terminal window
wp polski smoke-test

Salida:

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 OFF

Estados:

  • 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:

Terminal window
wp polski smoke-test --module=compliance --verbose

Exportar a JSON (p. ej. para CI/CD):

Terminal window
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)"
}
]
}

El comando smoke-test devuelve el código de salida correspondiente:

CódigoDescripción
0Todas las pruebas OK
1Advertencias (WARN)
2Errores 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: false

Ejemplo en un script bash:

#!/bin/bash
wp polski smoke-test --format=json > /tmp/smoke-test.json
EXIT_CODE=$?
if [ $EXIT_CODE -eq 2 ]; then
echo "Polski tests FAILED - check configuration"
exit 1
elif [ $EXIT_CODE -eq 1 ]; then
echo "Polski tests WARN - check warnings"
fi

Los comandos WP-CLI son compatibles con las instalaciones WordPress Multisite. Usa la opción --url para dirigirte a un sitio concreto:

Terminal window
wp polski smoke-test --url=store1.yourdomain.com
wp polski migrate --url=store2.yourdomain.com

Informar de problemas: github.com/wppoland/polski/issues

Esta página tiene únicamente carácter informativo y no constituye asesoramiento legal. Consulta con un abogado antes de la implementación. Polski for WooCommerce es software de código abierto (GPLv2) proporcionado sin garantía.