13 min. lee
WP-CLI: La guía completa para gestionar WordPress desde la línea de comandos
WP-CLI es la herramienta oficial de línea de comandos para gestionar instalaciones de WordPress directamente desde tu terminal, sin abrir nunca un navegador. Si alguna vez has pasado una tarde haciendo clic en el panel de administración de WordPress para actualizar plugins en varios sitios, ya sabes por qué existe esta herramienta.
En esta guía aprenderás de todo, desde la instalación de WP-CLI en Linux, macOS y Windows hasta la automatización de complejas tareas de mantenimiento con scripts y archivos de configuración. Tanto si gestionas un único blog como decenas de sitios de clientes, dominar WP-CLI cambiará fundamentalmente tu forma de trabajar con WordPress.
Lo que aprenderás:
- Cómo instalar y configurar WP-CLI en diferentes sistemas operativos
- Comandos esenciales para gestionar plugins, temas, usuarios y contenidos
- Operaciones de base de datos, incluidas exportaciones, importaciones y búsqueda-sustitución segura
- Técnicas de automatización mediante scripts, alias y cron jobs
- Buenas prácticas para evitar errores comunes al trabajar desde el terminal
¿Qué es WP-CLI? (Primero una explicación rápida)
WP-CLI son las siglas de WordPress Command Line Interface, una herramienta de código abierto que te permite gestionar sitios de WordPress completamente desde el terminal. En lugar de entrar en wp-admin y navegar por los menús, puedes ejecutar comandos como wp plugin update --all y ver cómo se actualiza toda tu pila de plugins en cuestión de segundos.
El proyecto comenzó alrededor de 2011, creado por desarrolladores que querían una forma más rápida de gestionar WordPress a escala. En 2017, se trasladó al paraguas oficial de WordPress.org y ahora lo mantiene un equipo de colaboradores entre los que se encuentran Alain Schlesser y Daniel Bachhuber.
Esto es lo que necesitas saber sobre WP-CLI:
- Versión estable actual: WP-CLI serie 2.x
- Compatibilidad con WordPress: Funciona con WordPress 5.x hasta 6.x (e históricamente hasta 3.7)
- Requisitos de PHP: PHP 7.4+ o 8.x recomendado por seguridad y rendimiento
- Ecosistema de comandos: Más de 40 comandos principales que cubren prácticamente todas las operaciones de WordPress
- Usuarios principales: Desarrolladores, agencias, ingenieros DevOps y usuarios avanzados que gestionan sitios complejos o múltiples
- Distribución: Disponible como archivo PHAR, a través de gestores de paquetes, o preinstalado en muchos hosts WordPress gestionados
Principales ventajas de usar WP-CLI
Una vez que comprendas por qué existe WP-CLI, la curva de aprendizaje será mucho más fácil de justificar. Esta sección explica las ventajas concretas que hacen que esta herramienta merezca tu tiempo.
Ahorro de tiempo en tareas repetitivas
Actualizar 20 plugins a través del panel de control de WordPress significa 20 cargas de página, 20 clics y ver 20 barras de progreso. Con WP-CLI, ejecutas wp plugin update --all una vez y sigues adelante. Para las agencias que gestionan sitios de varios clientes, esta diferencia se traduce en horas ahorradas cada semana.
Operaciones masivas y automatizadas
Considera un escenario en el que estás preparando 15 tiendas WooCommerce para el Viernes Negro. Necesitas actualizar plugins, borrar cachés y verificar la integridad de la base de datos en cada sitio. WP-CLI te permite programar toda esta secuencia y ejecutarla en todos los sitios en minutos en lugar de horas. Las principales funciones de automatización son:
- Actualizar todos los plugins de varias instalaciones con un único script
- Crear usuarios en bloque con funciones predefinidas
- Ejecutar el mantenimiento nocturno mediante cron (optimización de la base de datos, limpieza transitoria)
- Desplegar configuraciones idénticas de WordPress en nuevos entornos
Fiabilidad de las operaciones basadas en navegador
Las operaciones de navegador sufren tiempos de espera HTTP. Las importaciones de grandes bases de datos fallan a mitad del proceso. Las operaciones de búsqueda y reemplazo corrompen los datos serializados cuando se realizan con SQL sin procesar. WP-CLI evita todos estos problemas porque se ejecuta directamente en el servidor sin restricciones de tiempo de espera, y su comando buscar-reemplazar maneja correctamente las estructuras de datos serializados.
Control directo sobre los sistemas centrales de WordPress
Desde un terminal, puedes:
- Exportar e importar la base de datos de WordPress
- Modifica los ajustes de
wp-config.php - Inspeccionar y activar eventos wp-cron
- Activar y desactivar el modo de mantenimiento
- Ejecutar código PHP arbitrario en el contexto de WordPress
Carga reducida en wp-admin
En los servidores de producción con mucho tráfico, cada carga de página del panel de administración consume recursos. Ejecutar operaciones de mantenimiento a través de WP-CLI mantiene esa carga fuera del servidor web, lo que es importante en periodos de mucho tráfico.
Requisitos y entornos compatibles con WP-CLI
Antes de instalar WP-CLI, tienes que confirmar que tu servidor o entorno local cumple los requisitos básicos. La buena noticia es que la mayoría de las configuraciones modernas de WordPress ya cumplen los requisitos.
Requisitos de la versión de PHP:
- Mínimo: PHP 5.6 (aunque está anticuado)
- Recomendado: PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4 o 8.5 para la seguridad y el rendimiento en 2026
Compatibilidad con la versión de WordPress:
- Compatibilidad histórica: WordPress 3.7 y versiones posteriores
- Objetivo moderno: WordPress 5.0 a 6.7+ para proyectos actuales
Expectativas del sistema operativo:
- El mejor soporte: Sistemas tipo UNIX (Ubuntu 22.04 LTS, Debian 12, CentOS Stream, macOS)
- Windows: Soportado mediante WSL (Windows Subsystem for Linux) o instalación nativa de PHP
Requisitos adicionales:
- PHP disponible en la línea de comandos (el binario
phpdebe estar en tu PATH) - cURL o wget para descargar el archivo
wp-cli.phar - Acceso SSH para servidores remotos (la mayoría de los planes de alojamiento gestionado de WordPress lo incluyen por defecto)
Muchos alojamientos populares como Kinsta, SiteGround y DreamHost ya incluyen WP-CLI preinstalado. WordPress.com también incluye WP-CLI para sitios con acceso SSH habilitado.
Cómo instalar WP-CLI en Linux y macOS
El método de instalación estándar utiliza el archivo oficial PHAR (PHP Archive). Este proceso funciona en terminales Ubuntu, Debian, CentOS, Fedora y macOS.
Paso 1: Descarga el archivo PHAR
Abre tu terminal y descarga wp-cli.phar utilizando curl:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Alternativamente, utiliza wget:
wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Paso 2: Verifica la descarga (opcional pero recomendado)
Comprueba la suma de comprobación SHA-256 comparándola con el valor oficial publicado en la documentación de WP-CLI para asegurarte de que el archivo no ha sido manipulado durante la descarga:
sha256sum wp-cli.phar
Compara el resultado con la suma de comprobación que aparece en el sitio web oficial de WP-CLI.
Paso 3: Prueba el archivo PHAR
Confirma que el archivo php funciona:
php wp-cli.phar --info
Deberías ver una salida que muestre la versión de WP-CLI, la versión de PHP y la información del sistema.
Paso 4: Hazlo ejecutable y muévelo al PATH
Marca el archivo como ejecutable y muévelo a un directorio del PATH de tu sistema:
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
El comando sudo suele ser necesario porque /usr/local/bin es un directorio del sistema. Evita instalar WP-CLI como root si vas a ejecutarlo principalmente como usuario normal.
Paso 5: Verifica la instalación global
Confirma que WP-CLI ya está disponible globalmente:
wp --info
wp cli version
Deberías ver una salida confirmando la versión de wp cli, la ubicación del binario PHP y los detalles del sistema operativo. En este punto, ya tienes WP-CLI instalado y listo para usar.
Cómo instalar WP-CLI en Windows
Los usuarios de Windows tienen dos caminos principales: utilizar el Subsistema de Windows para Linux (WSL) o configurar una instalación nativa de Windows. WSL proporciona una experiencia más parecida a Linux y generalmente se recomienda.
Opción 1: Usar WSL (Recomendado)
En primer lugar, activa WSL en Windows 10 u 11:
wsl --install
Instala Ubuntu desde la Microsoft Store y, a continuación, inicia el terminal de Ubuntu. A partir de ahí, sigue exactamente los mismos pasos de instalación de Linux descritos en la sección anterior: descarga el archivo phar, hazlo ejecutable y muévelo a /usr/local/bin/wp.
Opción 2: Instalación nativa en Windows
Para una instalación nativa, necesitas tener instalado PHP para Windows con el ejecutable php disponible en el PATH de tu sistema.
- Descarga e instala PHP desde el sitio oficial de PHP para Windows
- Añade el directorio PHP a tu variable de entorno PATH de Windows
- Confirma que PHP funciona abriendo el Símbolo del sistema y ejecutando
php -v
A continuación, descarga el archivo WP-CLI PHAR:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Windows incluye curl por defecto desde 2018, así que esto debería funcionar sin configuración adicional. Crea una carpeta para WP-CLI (por ejemplo, C:\wp-cli) y mueve allí el archivo descargado.
A continuación, crea un archivo batch wrapper llamado wp.bat en la misma carpeta:
@echo off
php "C:\wp-cli\wp-cli.phar" %*
Añade C:\wp-cli a la variable de entorno PATH de tu sistema. Ahora abre una nueva ventana del símbolo del sistema o de PowerShell y compruébalo:
wp --info
Deberías ver la versión de WP-CLI y los detalles del entorno confirmando que WP-CLI está correctamente instalado.
Uso básico de WP-CLI y obtención de ayuda
Con WP-CLI instalado, necesitas entender el patrón básico de comandos antes de sumergirte en operaciones específicas. Todos los comandos de WP-CLI siguen esta estructura:
wp <command> <subcommand> [options]
Los comandos se ejecutan desde dentro de un directorio de instalación de WordPress: la carpeta que contiene wp-config.php. Si estás en otro lugar, puedes especificar la ruta con --path=/var/www/html/mysite.
Comprobación de tu entorno
Empieza por confirmar tu configuración:
wp --info
Muestra la versión de WP-CLI, la versión de PHP, la ruta binaria de PHP, el sistema operativo y otros detalles del entorno. Para ver sólo la versión de WP-CLI:
wp cli version
Explorar los comandos disponibles
Para listar todos los comandos wp cli disponibles:
wp help
Para obtener ayuda sobre un comando concreto:
wp help plugin
wp help core update
También puedes añadir --help a cualquier comando:
wp user --help
La ayuda se muestra en un paginador similar a las páginas man de Unix. Pulsa q para salir.
Primeros comandos a probar:
wp core version– muestra tu versión de WordPresswp plugin list– muestra todos los plugins de WordPress instalados con su estadowp theme list– muestra los temas instaladoswp user list– lista todos los usuarios del sitio
Estos comandos de sólo lectura te permiten explorar tu sitio de WordPress sin cambiar nada, lo que es perfecto para familiarizarte con la interfaz.
Instalar y configurar WordPress con WP-CLI
WP-CLI puede realizar una nueva instalación completa de WordPress más rápido que el instalador tradicional basado en web. Esto es especialmente valioso cuando se crean entornos de desarrollo o se despliegan nuevos sitios mediante programación.
Requisitos previos
Antes de ejecutar los comandos de instalación, necesitas tener preparada una base de datos MySQL o MariaDB. Para este ejemplo, asume que la has creado:
- Nombre de la base de datos:
wpsite_db - Usuario de la base de datos:
wpsite_user - Contraseña:
securepassword123 - Anfitrión:
localhost
Paso 1: Descarga los archivos del núcleo de WordPress
Navega hasta el directorio de instalación que desees y descarga el núcleo de WordPress:
wp core download
Esto recupera la última versión de WordPress. Para especificar una versión o configuración regional:
wp core download --version=6.4.2 --locale=fr_FR
Una vez completado, verás la confirmación de que WordPress se ha descargado correctamente.
Paso 2: Generar wp-config.php
Crea el archivo de configuración utilizando wp config create:
wp config create --dbname=wpsite_db --dbuser=wpsite_user --dbpass=securepassword123 --dbhost=localhost
Esto genera un wp-config.php completo con las credenciales de tu base de datos y las sales de seguridad generadas automáticamente.
Paso 3: Ejecuta la instalación
Ahora instala WordPress con los datos de tu sitio:
wp core install --url=https://example.com --title="My New Site" --admin_user=admin --admin_password=strongpassword [email protected]
Verás el mensaje «WordPress instalado correctamente» y tu sitio estará listo para usarse.
Instalación multisitio
Para redes WordPress multisitio, utiliza la variante multisitio. WP-CLI puede configurar instalaciones multisitio con:
wp core multisite-install --url=https://example.com --title="My Network" --admin_user=admin --admin_password=strongpassword [email protected]
Gestionar temas con WP-CLI
WP-CLI gestiona todas las operaciones relacionadas con los temas sin necesidad de acceder al panel de administración de WordPress. Puedes listar, instalar, activar, actualizar y eliminar temas directamente desde tu terminal.
Listado de temas instalados
Para ver todos los temas instalados actualmente:
wp theme list
Muestra de salida:
| nombre | estado | actualiza | versión |
|---|---|---|---|
| twentytwentyfour | activo | none | 1.0 |
| twentytwentythree | inactivo | none | 1.2 |
| astra | inactivo | disponible | 4.5.0 |
Activar un tema
Cambiar a un tema diferente:
wp theme activate astra
Esto cambia inmediatamente el tema activo. Volver a un tema predeterminado es útil para solucionar problemas relacionados con el tema:
wp theme activate twentytwentyfour
Instalar temas nuevos
Instala un tema del repositorio de WordPress.org:
wp theme install astra
Instala y activa en un solo comando:
wp theme install astra --activate
Actualizar temas
Actualizar un tema concreto:
wp theme update astra
O actualiza todos los temas a la vez:
wp theme update --all
Eliminar temas
Elimina un tema que ya no necesites:
wp theme delete twentytwentythree
Gestionar plugins con WP-CLI
La gestión de plugins es donde WP-CLI ahorra más tiempo. Puedes realizar operaciones masivas que requerirían docenas de clics en el panel de control.
Listado de plugins
wp plugin list
Muestra de salida:
| nombre | estado | actualiza | versión |
|---|---|---|---|
| woocommerce | activo | none | 8.5.1 |
| yoast-seo | activo | disponible | 21.0 |
| elementor | inactivo | none | 3.18.0 |
Instalar plugins
Instala un plugin por su slug:
wp plugin install woocommerce
Instala y activa:
wp plugin install yoast-seo --activate
Activar y desactivar
Activar un plugin:
wp plugin activate elementor
Desactiva un plugin (útil para depurar):
wp plugin deactivate elementor
Desactiva todos los plugins a la vez (salvavidas para la depuración de la «Pantalla Blanca de la Muerte»):
wp plugin deactivate --all
Actualizar plugins
Actualiza un plugin concreto:
wp plugin update yoast-seo
Actualiza todos los plugins:
wp plugin update --all
También puedes excluir determinados plugins de una actualización masiva:
wp plugin update --all --exclude=woocommerce
Actualizar y reparar el núcleo de WordPress
Mantener WordPress actualizado es fundamental para la seguridad. WP-CLI hace que este proceso sea transparente y controlable.
Comprobación de actualizaciones
wp core check-update
Actualizar WordPress
Actualiza a la última versión:
wp core update
Tras una actualización del núcleo, es una buena práctica actualizar el esquema de la base de datos:
wp core update-db
Verificar las sumas de comprobación
Si sospechas que tu sitio ha sido pirateado, puedes verificar que los archivos principales no han sido modificados:
wp core verify-checksums
Compara tus archivos con las sumas de comprobación del repositorio oficial de WordPress.
Reinstalación del núcleo
Si los archivos están dañados, puedes forzar una reinstalación sin afectar a tu contenido:
wp core download --force --skip-content
Gestión de contenidos, usuarios y base de datos
WP-CLI te permite interactuar directamente con los datos de tu sitio.
Gestión de Usuarios
Lista de usuarios:
wp user list
Crea un nuevo administrador:
wp user create newadmin [email protected] --role=administrator --user_pass=securepass123
Actualiza la contraseña de un usuario:
wp user update 1 --user_pass=newpassword
Elimina un usuario y reasigna su contenido:
wp user delete 5 --reassign=1
Operaciones con la base de datos
Exporta la base de datos a un archivo:
wp db export backup.sql
Importar una base de datos desde un archivo:
wp db import backup.sql
Optimiza la base de datos:
wp db optimize
Abre una consola MySQL conectada directamente a tu base de datos de WordPress:
wp db cli
Buscar y reemplazar (de la forma correcta)
Trasladar manualmente un sitio WordPress a un nuevo dominio es arriesgado porque los datos suelen estar serializados en la base de datos. Una simple búsqueda y sustitución SQL romperá los widgets y las opciones del tema. WP-CLI maneja la serialización correctamente.
Estándar Buscar-Reemplazar
wp search-replace 'http://old-domain.com' 'https://new-domain.com'
Ejecución en seco (vista previa)
Comprueba siempre lo que va a cambiar antes de ejecutar el comando:
wp search-replace 'http://old-domain.com' 'https://new-domain.com' --dry-run
Exportar con sustituciones
Puedes exportar una base de datos con las sustituciones realizadas en el archivo, dejando intacta la base de datos activa:
wp search-replace 'old.com' 'new.com' --export=migrated-db.sql
Mantenimiento avanzado: Cron y Caché de Objetos
Gestión de Cron Jobs
Ver eventos programados:
wp cron event list
Ejecuta inmediatamente todos los eventos cron debidos:
wp cron event run --due-now
Gestión de transitorios y caché
Borra la caché de objetos:
wp cache flush
Borra todos los transitorios caducados:
wp transient delete --expired
Automatizar tareas con guiones
Puedes combinar comandos WP-CLI en scripts Bash para un mantenimiento automatizado.
Ejemplo: Script de mantenimiento semanal
Crea un archivo llamado maintain.sh:
#!/bin/bash
# Update everything
wp core update
wp core update-db
wp plugin update --all
wp theme update --all
# Cleanup
wp transient delete --expired
wp cache flush
wp db optimize
echo "Maintenance complete."
Hazlo ejecutable (chmod +x maintain.sh) y ejecútalo para realizar el mantenimiento completo del sitio en segundos.
Usar WP-CLI remotamente vía SSH
No necesitas iniciar sesión en el servidor para ejecutar comandos si configuras alias.
En tu archivo local wp-cli.yml:
@prod:
ssh: [email protected]/var/www/html
@dev:
ssh: [email protected]/var/www/html
Ahora puedes ejecutar comandos en el servidor remoto desde tu máquina local:
wp @prod plugin list
wp @dev core version
Buenas prácticas
- Haz siempre una copia de seguridad: Antes de ejecutar actualizaciones masivas o comandos de búsqueda-sustitución, ejecuta
wp db export. - Utiliza la ejecución en seco: Para buscar-sustituir, utiliza siempre primero
--dry-run. - No lo ejecutes como root: WP-CLI te avisa si lo ejecutas como root. Es más seguro ejecutarlo como usuario del servidor web (por ejemplo,
www-data) o como tu cuenta de usuario específica. - Prueba en la fase inicial: Utiliza WP-CLI para clonar tu sitio de producción en staging, prueba allí tus scripts de actualización y luego aplícalos a producción.
Conclusión
WP-CLI transforma la gestión de WordPress de una serie de clics en operaciones ágiles y programables. Empezar con comandos sencillos, como comprobar versiones y listar plugins, sienta las bases para una automatización avanzada. Integrar WP-CLI en tu flujo de trabajo hoy mismo te ahorrará incontables horas en todos tus proyectos de WordPress.