WP-CLI: Guía práctica para gestionar WordPress desde la línea de comandos
WP-CLI es la interfaz oficial de línea de comandos para gestionar WordPress. Permite realizar muchas tareas sin abrir wp-admin y resulta útil para mantenimiento, migraciones, automatización y diagnóstico.
WP-CLI no está disponible en todos los proveedores. Necesitas acceso SSH, WP-CLI instalado y permisos sobre el directorio WordPress.
Qué es WP-CLI y cuándo usarlo
Permite revisar núcleo, plugins, temas y usuarios, exportar la base, vaciar la caché de objetos y sustituir URLs de forma controlada. No sustituye backups, staging ni pruebas de compatibilidad.
Antes de empezar
- Confirma que el hosting incluye SSH y WP-CLI.
- Crea un backup completo antes de actualizaciones o cambios de datos.
- Usa staging para cambios de riesgo.
- Conéctate con una cuenta limitada, no root.
- Comprueba el document root.
1. Conexión SSH y comprobación
cd /path/to/wordpress
wp --info
wp core versionSi no se encuentra wp, consulta al proveedor. Para “This does not seem to be a WordPress installation”, revisa la carpeta o usa --path=/ruta/correcta.
2. Núcleo de WordPress
wp core version
wp core check-update
wp core verify-checksumsLos checksums detectan archivos modificados del núcleo, pero no revisan plugins, temas ni uploads. Antes de wp core update, haz backup y prueba en staging.
3. Plugins y temas
wp plugin list
wp plugin list --update=available
wp plugin status plugin-slug
wp plugin activate plugin-slug
wp plugin deactivate plugin-slug
wp theme list
wp theme status theme-slugNo desactives masivamente plugins en una tienda activa sin plan de mantenimiento. Prueba en staging y actualiza uno a uno.
wp plugin update plugin-slug
wp theme update theme-slug
4. Usuarios
wp user list --fields=ID,user_login,user_email,roles
wp user get 1Revisa administradores desconocidos, pero no elimines usuarios sin verificar identidad y contenidos. No expongas contraseñas en el shell.
5. Base de datos
Advertencia: estos comandos pueden afectar a todo el sitio. Haz un backup antes de escribir u optimizar.
wp db check
wp db export wordpress-before-change.sqlComprueba que el export existe, tiene un tamaño razonable y está fuera del directorio público. Bases grandes pueden requerir otro proceso.
6. Caché
wp cache flushVacía la caché de objetos WordPress, no necesariamente page cache, CDN o caché de servidor.
7. Actualizaciones
wp core check-update
wp plugin list --update=available
wp theme list --update=availableSon comprobaciones. Antes de actualizar prepara backup, staging y rollback.
8. Search-replace con vista previa
WP-CLI gestiona datos serializados, pero una sustitución errónea puede modificar muchos registros. Ejecuta primero:
wp search-replace 'https://old.example' 'https://new.example' --all-tables-with-prefix --dry-runRevisa tablas y cambios. Solo después de verificar y tener backup repite sin --dry-run. Multisite y tablas personalizadas requieren controles extra.
Problemas frecuentes
- Command not found: WP-CLI no está disponible o no está en PATH.
- Ruta incorrecta: revisa document root o
--path. - Error de base: comprueba wp-config.php y el servicio.
- Permission denied: revisa propietario y permisos; no uses sudo sin motivo.
- Error fatal: consulta logs y revierte el último cambio.
- Timeout/memoria: divide la tarea o contacta al proveedor.
Prácticas de seguridad
- Usa claves SSH y no compartas credenciales.
- Evita comandos destructivos.
- Guarda exports fuera de directorios públicos.
- Revisa sitio, wp-admin, formularios y logs.
- Si desconoces el alcance, detente y solicita soporte.