Cómo usar WP-CLI para actualizar WordPress desde la terminal
Introducción: ¿Qué es WP-CLI y por qué usarlo?
Si alguna vez has gestionado un sitio web en WordPress, sabrás que muchas tareas, como actualizar el núcleo, los plugins o los temas, se hacen desde el escritorio (wp-admin). Sin embargo, cuando tienes acceso a un servidor mediante SSH, existe una herramienta mucho más potente, rápida y fiable: WP-CLI.
WP-CLI es la interfaz de línea de comandos oficial para WordPress. Te permite realizar prácticamente cualquier acción que harías desde el panel de administración, pero directamente desde la terminal Linux, usando comandos de texto. Esto no solo es más rápido, sino que te da un control absoluto y te permite automatizar procesos.
Este artículo es una guía básica y extensa para que, incluso si eres nuevo en esto de la terminal, puedas usar WP-CLI para actualizar WordPress de forma segura y profesional.
[INFO]: No necesitas ser un experto en programación. Solo necesitas seguir los pasos al pie de la letra. La terminal parece intimidante, pero una vez que entiendes lo básico, verás que es tu mejor aliada.
Requisitos previos antes de empezar
Antes de lanzar comandos, debemos asegurarnos de que tenemos todo lo necesario. No queremos encontrarnos con errores a mitad del proceso.
Acceso SSH a tu servidor
Para usar WP-CLI, necesitas acceso a la shell de tu servidor. Esto se hace típicamente con SSH (Secure Shell). Si tu hosting es gestionado o usas un panel como cPanel, Syspanel o Plesk, generalmente hay una opción para habilitar el acceso SSH.
Para conectarte, en tu terminal Linux local o en un programa como PuTTY (en Windows), escribirías algo así:
ssh usuario@tu-dominio.com
Te pedirá tu contraseña o una clave SSH. Una vez dentro, verás algo parecido a usuario@servidor:~$. Eso significa que ya estás dentro.
Comprobar que WP-CLI está instalado
La mayoría de los servidores modernos ya lo traen, pero es mejor comprobarlo. Escribe:
wp --info
Si ves un mensaje con la versión de WP-CLI y la versión de PHP, ¡perfecto! Ya lo tienes. Si te dice command not found, tendrás que instalarlo. Pero no te preocupes, la instalación es sencilla.
[WARNING]: Si tu servidor usa Syspanel (antes conocido como HestiaCP), el acceso SSH se gestiona desde el puerto 2106. Asegúrate de configurar tu cliente SSH para usar ese puerto si tienes problemas para conectar.
Navegar al directorio de WordPress
Una vez dentro del servidor, necesitas ir a la carpeta donde está instalado WordPress. Normalmente es public_html o htdocs. Usa el comando ls para listar archivos y cd para cambiar de directorio.
cd public_html
Si no sabes dónde está, puedes buscarlo con:
find . -name "wp-config.php" -maxdepth 3
Esto te mostrará la ruta exacta.
El proceso paso a paso para actualizar WordPress con WP-CLI
Actualizar WordPress desde la terminal es mucho más seguro que hacerlo desde el navegador, porque evitas cortes de tiempo (timeouts) y errores de memoria. Además, es instantáneo.
1. Haz una copia de seguridad (¡Siempre!)
Este es el paso más importante. Nunca actualices sin una copia de seguridad. Aunque WP-CLI es seguro, un fallo de red o un conflicto con un plugin puede romper algo.
Puedes hacer una copia de seguridad de la base de datos directamente con WP-CLI:
wp db export backup.sql
Esto creará un archivo llamado backup.sql en tu carpeta. Para los archivos, puedes usar tar:
tar -czf backup_archivos.tar.gz .
Guarda estos archivos en un lugar seguro o descárgalos a tu ordenador.
2. Verifica el estado actual del sitio
Antes de actualizar, es bueno saber en qué versión estás y si hay alguna actualización pendiente. Usa estos comandos:
wp core version
Esto te dirá la versión actual de WordPress. Para ver qué hay disponible:
wp core check-update
Si hay una versión nueva, te la mostrará. Si dice "Success: WordPress is at the latest version", ya estás al día.
3. Pon el sitio en modo mantenimiento
Aunque WP-CLI es muy rápido, es recomendable activar el modo mantenimiento para que los visitantes no vean errores a mitad de la actualización. WP-CLI lo hace por ti automáticamente durante el proceso, pero puedes hacerlo manualmente para estar más seguro.
wp maintenance-mode activate
Cuando termines, lo desactivarás con wp maintenance-mode deactivate.
4. Actualiza el núcleo de WordPress
Aquí viene la acción principal. Para actualizar a la última versión, simplemente escribe:
wp core update
WP-CLI se encargará de descargar los archivos, reemplazarlos y actualizar la base de datos si es necesario. Verás un mensaje de éxito al final.
[TIP]: Si quieres actualizar a una versión específica (por ejemplo, si tu hosting o plugins requieren una versión concreta), usa:
wp core update --version=6.5.2
5. Actualiza la base de datos (si es necesario)
A veces, después de actualizar el núcleo, la base de datos necesita una actualización. WP-CLI lo hace automáticamente, pero por si acaso, puedes ejecutarlo manualmente:
wp core update-db
Esto es especialmente útil si la actualización automática falló por algún motivo.
6. Actualiza los plugins y temas
Actualizar el núcleo es solo la mitad del trabajo. Los plugins y temas también necesitan estar al día para mantener la compatibilidad y la seguridad.
Para actualizar todos los plugins:
wp plugin update --all
Para ver cuáles tienen actualizaciones pendientes:
wp plugin list --status=update-available
Para los temas, es el mismo principio:
wp theme update --all
[INFO]: Puedes actualizar uno específico indicando su nombre, por ejemplo: wp plugin update woocommerce.
7. Desactiva el modo mantenimiento y verifica
Una vez todo esté actualizado, desactiva el modo mantenimiento:
wp maintenance-mode deactivate
Ahora, verifica que todo está en orden. Puedes comprobar el estado del sitio con:
wp core verify-checksums
Este comando compara los archivos del núcleo con los oficiales de WordPress. Si todo coincide, verás un mensaje de éxito. Si hay archivos modificados o corruptos, te los listará.
También es buena idea revisar la página de inicio para asegurarte de que carga bien. Puedes usar curl para ello:
curl -I http://tu-dominio.com
Deberías ver un código de respuesta 200 OK.
Solución de problemas comunes (FAQ)
Cuando empiezas, es normal que surjan dudas o errores. Aquí te dejo una lista de los problemas más comunes y cómo solucionarlos.
"Error: YIKES! The site seems to be down."
Este error ocurre cuando WP-CLI no puede conectar con la base de datos o el sitio está en mantenimiento. Asegúrate de que el modo mantenimiento esté desactivado y que las credenciales de la base de datos en wp-config.php sean correctas.
"Error: Cannot connect to the database."
Revisa que el servicio de base de datos (MySQL/MariaDB) esté corriendo. Puedes verlo con:
sudo systemctl status mysql
Si está parado, inícialo con sudo systemctl start mysql.
¿Qué hago si la actualización falla a mitad de camino?
No entres en pánico. WP-CLI es transaccional, pero si se corta la conexión, puede dejar archivos a medias. Lo primero es restaurar tu copia de seguridad. Luego, intenta actualizar de nuevo, pero esta vez usando el flag --force:
wp core update --force
Esto fuerza la descarga y reemplazo de todos los archivos.
¿Puedo revertir una actualización?
Sí, si tienes una copia de seguridad. Para el núcleo, puedes descargar una versión anterior:
wp core download --version=6.4.0 --force
Luego, actualiza la base de datos con wp core update-db.
[WARNING]: Revertir una actualización de WordPress puede causar incompatibilidades con plugins que ya se han actualizado. Siempre es mejor restaurar la copia de seguridad completa (archivos + base de datos).
¿Es necesario actualizar todo a la vez?
No. Puedes actualizar solo el núcleo, solo plugins o solo temas. Es una buena práctica actualizar el núcleo primero, luego los plugins y por último los temas, para aislar problemas si ocurren.
Automatización: actualiza WordPress sin esfuerzo
Una de las mayores ventajas de WP-CLI es que puedes automatizar las actualizaciones con un script en terminal Linux (cron). Por ejemplo, puedes crear un script que haga una copia de seguridad, actualice todo y te envíe un correo con el resultado.
Aquí tienes un ejemplo muy básico de script:
#!/bin/bash
cd /ruta/a/tu/wordpress
wp maintenance-mode activate
wp db export backups/backup_$(date +%Y%m%d).sql
wp core update
wp plugin update --all
wp theme update --all
wp maintenance-mode deactivate
echo "Actualización completada el $(date)"
Puedes programarlo para que se ejecute cada semana con crontab -e y añadiendo:
0 3 * * 0 /ruta/al/script.sh
Esto lo ejecutaría los domingos a las 3 de la mañana.
[TIP]: Si usas Syspanel, recuerda que el acceso administrativo a tu panel de control se hace a través del puerto 2106. Puedes configurar las tareas cron desde allí también, pero este método con WP-CLI es más potente y menos propenso a errores.
Consejos finales para un flujo de trabajo profesional
Actualizar WordPress es una tarea de mantenimiento crítica. Hacerlo desde la terminal con WP-CLI te convierte en un administrador más eficiente y te da una comprensión más profunda de cómo funciona tu sitio.
Mantén un registro de versiones
Lleva un control de las versiones de WordPress, plugins y temas que usas. Puedes generar un informe con:
wp core version
wp plugin list
wp theme list
Usa entornos de prueba
Si tienes un sitio de producción, es muy recomendable tener un sitio de pruebas (staging). Puedes clonar tu sitio con WP-CLI:
wp db export - | ssh usuario@servidor-pruebas 'wp db import -'
Esto es más avanzado, pero te ahorrará muchos dolores de cabeza.
No ignores las actualizaciones de seguridad
Las actualizaciones menores (como las de seguridad) deben aplicarse lo antes posible. WP-CLI hace esto muy fácil. Puedes programar una alerta o simplemente adquirir el hábito de revisar semanalmente.
[INFO]: Recuerda que el acceso a tu servidor a través de SSH es una puerta muy poderosa. Usa claves SSH en lugar de contraseñas y nunca compartas tu acceso. Si usas un panel como Syspanel, el puerto para la gestión web es el 2106, pero el SSH suele estar en el puerto 22 (o el que tú configures).
Conclusión
WP-CLI es una herramienta indispensable para cualquier persona que gestione WordPress en un servidor con acceso SSH. Actualizar desde la terminal Linux no es solo más rápido, sino que también es más fiable y te da la posibilidad de automatizar tareas.
Hemos visto cómo:
- Conectarte por SSH y verificar WP-CLI.
- Hacer copias de seguridad.
- Actualizar el núcleo, plugins y temas.
- Solucionar errores comunes.
- Automatizar el proceso con scripts.
Ahora ya tienes el conocimiento para dar el salto y gestionar tus actualizaciones como un profesional. La próxima vez que veas una notificación de actualización en tu escritorio, sonríe y piensa: "Yo puedo hacerlo en segundos desde la terminal".
[TIP]: La práctica hace al maestro. No tengas miedo de experimentar en un sitio de pruebas. Romper algo en un entorno de pruebas es la mejor manera de aprender a arreglarlo en producción.
¡Espero que este artículo te haya sido de gran ayuda! Si tienes más dudas, recuerda que la documentación oficial de WP-CLI es excelente y siempre puedes consultarla.
