Portada » WP-CLI: cómo administrar WordPress desde la terminal
WordPress · Terminal · Administración de servidores

WP-CLI: qué es, cómo instalarlo y administrar WordPress desde la terminal

WP-CLI es la herramienta de línea de comandos que permite administrar WordPress directamente desde una terminal. Aprende cómo instalarla, conectarte mediante SSH, gestionar plugins y temas, actualizar el núcleo, realizar copias de seguridad, consultar la base de datos y automatizar tareas de mantenimiento utilizando comandos.

¿Qué es WP-CLI? WP-CLI (WordPress Command Line Interface) es una interfaz de línea de comandos que permite administrar un sitio WordPress mediante instrucciones ejecutadas desde una terminal. Con ella puedes instalar y actualizar WordPress, administrar plugins y temas, crear publicaciones, gestionar usuarios, exportar bases de datos, reemplazar URLs y ejecutar tareas de mantenimiento sin utilizar el escritorio de administración.

¿Qué es WP-CLI y para qué sirve?

WP-CLI es la interfaz de línea de comandos para WordPress. Permite ejecutar operaciones administrativas y de desarrollo utilizando comandos desde Linux, macOS, Windows mediante un entorno compatible o una terminal disponible en un servidor.

Normalmente, las tareas de administración de WordPress se realizan desde el escritorio web. Con WP-CLI puedes ejecutar esas mismas operaciones desde una consola, además de acceder a funciones que facilitan la automatización y el mantenimiento de instalaciones.

Por ejemplo, puedes instalar un plugin, activar un tema, consultar la versión de WordPress, exportar una base de datos o crear publicaciones sin navegar por el panel de administración.

¿Qué puedes hacer con WP-CLI?

  • Descargar e instalar WordPress.
  • Consultar y actualizar la versión de WordPress.
  • Instalar, activar, desactivar y actualizar plugins.
  • Instalar, consultar y cambiar temas.
  • Crear, editar, listar y eliminar publicaciones.
  • Administrar usuarios, perfiles y roles.
  • Exportar e importar bases de datos.
  • Buscar y reemplazar URLs en la base de datos.
  • Administrar tareas programadas de WordPress.
  • Vaciar cachés y gestionar datos transitorios.
  • Ejecutar código PHP y scripts de automatización.
  • Administrar instalaciones WordPress Multisite.

WP-CLI es especialmente útil para desarrolladores web, administradores de servidores, profesionales que mantienen múltiples instalaciones WordPress y equipos que trabajan con VPS o hosting con acceso SSH.

Contexto en Chile: si administras un WordPress alojado en un VPS, servidor Linux o hosting con SSH habilitado, WP-CLI puede ayudarte a realizar tareas de mantenimiento directamente desde la terminal. En hosting compartido, su disponibilidad depende de las herramientas y permisos que entregue el proveedor.

¿Cómo funciona WP-CLI?

WP-CLI interpreta comandos escritos en una terminal y los utiliza para interactuar con una instalación de WordPress. Dependiendo de la instrucción, puede cargar WordPress, ejecutar funciones administrativas, conectarse a la base de datos o gestionar archivos.

La estructura general de un comando es:

wp [comando] [subcomando] [argumentos] [opciones]

Por ejemplo:

wp plugin list

En esta instrucción:

  • wp: ejecuta la interfaz de comandos.
  • plugin: identifica el área que quieres administrar.
  • list: indica que deseas listar los plugins.

¿Dónde se ejecutan los comandos?

Lo habitual es conectarse al servidor mediante SSH y ejecutar WP-CLI desde la carpeta donde está instalado WordPress.

cd /ruta/a/tu/wordpress

wp plugin list

Si no estás dentro del directorio de WordPress, puedes indicar la ruta mediante el parámetro global --path.

wp --path=/home/usuario/public_html plugin list

Esto resulta útil cuando administras varias instalaciones desde una misma cuenta de servidor.

Requisitos para utilizar WP-CLI

Antes de instalar WP-CLI, debes comprobar que tu entorno dispone de las herramientas necesarias para ejecutar comandos y acceder a los archivos de WordPress.

Requisito Descripción
PHP CLI PHP debe estar disponible desde la terminal.
Acceso SSH Necesario para conectarte remotamente a un servidor cuando trabajas desde tu computador.
Instalación WordPress Debes conocer la ubicación de los archivos y del archivo wp-config.php para administrar un sitio existente.
Permisos El usuario del servidor necesita permisos adecuados sobre los archivos y directorios.
Conexión a la base de datos WordPress debe tener una configuración válida para ejecutar operaciones relacionadas con la base de datos.
WP-CLI El ejecutable debe estar instalado o disponible mediante su archivo Phar.

Comprobar la versión de PHP desde la terminal

php --version

Comprobar si tienes acceso SSH

Desde tu computador puedes intentar conectarte utilizando el usuario y servidor proporcionados por tu proveedor de hosting:

ssh usuario@servidor

Si el servidor utiliza un puerto diferente al predeterminado:

ssh -p 2222 usuario@servidor

El nombre del servidor, usuario, puerto y método de autenticación deben ser proporcionados por el administrador del VPS o el proveedor de hosting.

Atención: disponer de acceso al panel de hosting no significa necesariamente que tengas acceso SSH. Algunos proveedores deshabilitan la terminal o exigen activarla desde el panel de control.

¿Cómo instalar WP-CLI paso a paso?

La instalación recomendada por el proyecto WP-CLI utiliza un archivo Phar descargable. Phar es un formato de archivo ejecutable de PHP que permite distribuir la herramienta como un único archivo.

El procedimiento puede variar según el sistema operativo y los permisos de tu servidor.

Instalar WP-CLI en Linux o un servidor VPS

1. Crear un directorio para herramientas

mkdir -p "$HOME/bin"

2. Descargar WP-CLI

curl -o "$HOME/bin/wp" \
https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

3. Dar permisos de ejecución

chmod +x "$HOME/bin/wp"

4. Incorporar el directorio al PATH

export PATH="$HOME/bin:$PATH"

Para conservar la configuración en futuras sesiones, añade esa línea al archivo de inicio de tu shell, como ~/.bashrc o ~/.bash_profile, según el entorno.

5. Verificar la instalación

wp --info
Resultado esperado: WP-CLI mostrará información del sistema operativo, PHP, ubicación del ejecutable y versión instalada.

Instalar WP-CLI sin permisos sudo

En hosting compartido es posible que no tengas permisos de administrador. En ese caso, puedes guardar el archivo ejecutable dentro de tu directorio personal, siempre que el proveedor permita su ejecución.

mkdir -p ~/bin

curl -o ~/bin/wp \
https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

chmod +x ~/bin/wp

php ~/bin/wp --info

Si el servidor no permite ejecutar archivos desde esa ubicación, consulta las condiciones de acceso SSH y las herramientas disponibles con tu proveedor.

Actualizar WP-CLI

Si instalaste WP-CLI mediante el método Phar recomendado, puedes comprobar si existe una versión nueva y actualizarla con:

wp cli check-update
wp cli update

Es preferible utilizar la versión estable en producción. Las compilaciones nocturnas están destinadas principalmente a pruebas y desarrollo.

Primeros comandos de WP-CLI que debes conocer

Cuando WP-CLI está instalado, puedes comenzar consultando información del entorno y verificando que WordPress se encuentre disponible.

Comando Función
wp --info Muestra información del entorno WP-CLI.
wp cli version Consulta la versión de WP-CLI.
wp core version Muestra la versión de WordPress.
wp core is-installed Comprueba si WordPress está instalado.
wp plugin list Lista los plugins.
wp theme list Lista los temas.
wp option get siteurl Consulta la URL configurada del sitio.
wp help Muestra ayuda general.

Consultar información del sitio

wp core version

wp option get siteurl

wp option get home

wp core is-installed

Consultar la configuración del entorno

wp cli info

wp cli version

Estos comandos son útiles para revisar rápidamente una instalación sin tener que ingresar al escritorio de WordPress.

¿Cómo administrar WordPress Core con WP-CLI?

WP-CLI permite descargar, instalar, consultar y actualizar los archivos principales de WordPress. También permite revisar la integridad de los archivos y ejecutar procedimientos de actualización de la base de datos.

Consultar la versión instalada

wp core version

Comprobar si hay actualizaciones

wp core check-update

Actualizar WordPress

wp core update

Actualizar la base de datos

wp core update-db

Verificar archivos del núcleo

wp core verify-checksums

La verificación de checksums compara archivos del núcleo con los valores oficiales de WordPress. Es una herramienta útil para detectar modificaciones inesperadas o archivos que no coinciden con la distribución oficial.

Descargar WordPress desde la terminal

En una instalación nueva y en el directorio correspondiente, puedes descargar los archivos del núcleo mediante:

wp core download --locale=es_ES

El código de idioma del ejemplo es español de España. Selecciona el locale que corresponda a tu instalación y que esté disponible en WordPress.

Antes de actualizar: realiza una copia de seguridad de la base de datos y de los archivos. Comprueba la compatibilidad de plugins y temas, y realiza primero las actualizaciones en un entorno de pruebas cuando sea posible.

¿Cómo instalar, activar y actualizar plugins con WP-CLI?

La administración de plugins es una de las funciones más utilizadas de WP-CLI. Puedes instalar extensiones desde el directorio oficial, activar o desactivar plugins y consultar su estado sin ingresar al panel de WordPress.

Listar plugins instalados

wp plugin list

Instalar un plugin

wp plugin install nombre-del-plugin

Instalar y activar un plugin

wp plugin install nombre-del-plugin --activate

Activar un plugin

wp plugin activate nombre-del-plugin

Desactivar un plugin

wp plugin deactivate nombre-del-plugin

Actualizar un plugin específico

wp plugin update nombre-del-plugin

Actualizar todos los plugins

wp plugin update --all

Eliminar un plugin

wp plugin delete nombre-del-plugin

El comando de eliminación borra los archivos del plugin, pero no equivale necesariamente a ejecutar su procedimiento de desinstalación. Consulta la documentación del plugin antes de eliminarlo si necesitas conservar configuraciones o datos.

Consultar el estado de un plugin

wp plugin status nombre-del-plugin

Estos comandos son especialmente útiles para mantener sitios WordPress que cuentan con numerosas extensiones.

¿Cómo gestionar temas de WordPress con WP-CLI?

WP-CLI permite instalar temas, consultar cuáles están disponibles, activar uno nuevo y administrar las actualizaciones.

Listar temas instalados

wp theme list

Instalar un tema

wp theme install nombre-del-tema

Instalar y activar un tema

wp theme install nombre-del-tema --activate

Consultar el estado de un tema

wp theme status nombre-del-tema

Activar un tema instalado

wp theme activate nombre-del-tema

Actualizar todos los temas

wp theme update --all

Si trabajas con un tema como Astra, puedes comprobar su estado antes de realizar modificaciones:

wp theme status astra
Precaución: cambiar el tema mediante WP-CLI activa inmediatamente la nueva plantilla. Antes de hacerlo en producción, comprueba menús, widgets, plantillas, funcionalidades y apariencia móvil.

¿Cómo crear y administrar publicaciones con WP-CLI?

WP-CLI también permite administrar el contenido de WordPress. Puedes listar publicaciones, crear borradores, cambiar estados, consultar registros y editar datos sin pasar por Gutenberg.

Listar publicaciones

wp post list

Listar páginas

wp post list --post_type=page

Listar publicaciones con campos específicos

wp post list \
--post_type=page \
--fields=ID,post_title,post_status \
--format=table

Crear una publicación en borrador

wp post create \
--post_type=post \
--post_title="Publicación de prueba" \
--post_status=draft

Crear una página

wp post create \
--post_type=page \
--post_title="Página de prueba" \
--post_status=draft

Consultar una publicación por ID

wp post get 123

Actualizar el estado de una publicación

wp post update 123 --post_status=draft

Eliminar una publicación

wp post delete 123

En el último ejemplo, WP-CLI envía normalmente el contenido a la papelera. Para operaciones permanentes existen opciones adicionales, por lo que debes verificar el comando antes de ejecutar eliminaciones.

Administrar metadatos de una publicación

wp post meta list 123

wp post meta get 123 nombre_del_campo

wp post meta update 123 nombre_del_campo "Nuevo valor"

Estas herramientas también pueden utilizarse con tipos de contenido personalizados, siempre que el tipo de contenido esté registrado y sea reconocido por WordPress.

¿Cómo administrar usuarios de WordPress con WP-CLI?

WP-CLI permite consultar usuarios, crear cuentas, modificar perfiles y gestionar roles desde la terminal.

Listar usuarios

wp user list

Crear un usuario

wp user create editor contenido@dominio.cl --role=editor

WordPress genera una contraseña aleatoria cuando no se especifica una. Debes gestionar esa contraseña por un canal seguro.

Consultar un usuario

wp user get 123

Actualizar el rol de un usuario

wp user set-role 123 editor

Consultar los roles y capacidades

wp user list-caps 123

Eliminar un usuario y reasignar sus publicaciones

wp user delete 123 --reassign=456
Seguridad: no compartas contraseñas de usuarios ni ejecutes comandos con credenciales sensibles visibles en capturas o registros. Utiliza roles con privilegios mínimos y evita crear administradores innecesarios.

¿Cómo administrar la base de datos de WordPress con WP-CLI?

WP-CLI ofrece comandos para consultar, exportar, importar, comprobar y optimizar la base de datos de WordPress. Son especialmente útiles para migraciones, respaldos y tareas de mantenimiento.

Comprobar la base de datos

wp db check

Consultar el tamaño de la base de datos

wp db size

Listar las tablas

wp db tables

Exportar la base de datos

wp db export backup-wordpress.sql

Importar una copia de seguridad

wp db import backup-wordpress.sql

Optimizar las tablas

wp db optimize

Ejecutar una consulta SQL

wp db query "SHOW TABLES;"

La función de exportación permite generar un archivo SQL que puede utilizarse para restaurar los datos de la base de datos. La importación debe realizarse con cuidado porque puede modificar o reemplazar información existente.

Importante: una exportación de la base de datos no incluye automáticamente todos los archivos multimedia, temas, plugins y otros archivos de wp-content. Para tener un respaldo completo, debes conservar también los archivos del sitio.

Ejemplo de respaldo con fecha

Desde Bash puedes generar un nombre diferente para cada respaldo:

wp db export "backup-$(date +%F-%H%M%S).sql"

Guarda las copias en una ubicación protegida, preferentemente fuera del directorio público del sitio, y comprueba periódicamente que pueden restaurarse.

¿Cómo buscar y reemplazar URLs con WP-CLI?

El comando wp search-replace permite localizar y reemplazar valores en la base de datos de WordPress. Es muy útil cuando migras una web, cambias de dominio o trasladadas un sitio desde un entorno de desarrollo a producción.

Por ejemplo, imagina que tienes un sitio de pruebas en:

https://pruebas.dominio.cl

Y deseas trasladarlo a:

https://dominio.cl

Primero realizar una simulación

wp search-replace \
'https://pruebas.dominio.cl' \
'https://dominio.cl' \
--dry-run

La opción --dry-run ejecuta el análisis y muestra lo que cambiaría sin guardar las modificaciones.

Ejecutar el reemplazo definitivo

Después de revisar el resultado y realizar una copia de seguridad, puedes ejecutar:

wp search-replace \
'https://pruebas.dominio.cl' \
'https://dominio.cl'

Excluir la columna GUID

wp search-replace \
'https://pruebas.dominio.cl' \
'https://dominio.cl' \
--skip-columns=guid \
--dry-run

WP-CLI puede procesar datos serializados, algo especialmente importante en WordPress porque algunos plugins y temas almacenan configuraciones mediante estructuras serializadas de PHP.

No realices reemplazos masivos sin una copia de seguridad. Revisa primero el resultado de --dry-run, confirma los dominios de origen y destino y verifica las tablas involucradas. En WordPress Multisite también debes considerar el alcance de cada sitio.

Mantenimiento de WordPress con WP-CLI

WP-CLI permite ejecutar tareas de mantenimiento frecuentes desde una terminal. Esto facilita administrar sitios con muchos plugins, bases de datos grandes o procesos que necesitan ejecutarse de forma controlada.

Vaciar la caché de objetos

wp cache flush

Este comando limpia la caché de objetos de WordPress mediante el sistema de caché disponible. Su efecto sobre cachés de página o cachés externas depende de la configuración y de los plugins instalados.

Eliminar transients

wp transient delete --all

Los transients son datos temporales que WordPress y sus extensiones pueden utilizar para almacenar resultados durante un tiempo determinado.

Actualizar reglas de enlaces permanentes

wp rewrite flush

Permite regenerar las reglas de reescritura. No es necesario ejecutarlo constantemente, sino cuando existe una razón para actualizar esas reglas.

Revisar la integridad de WordPress Core

wp core verify-checksums

Revisar la configuración de WP-Cron

wp cron test

Estas operaciones permiten detectar problemas y ejecutar tareas de mantenimiento sin depender exclusivamente del escritorio.

¿Cómo automatizar tareas de WordPress con WP-CLI y Cron?

WP-CLI puede integrarse con el sistema Cron de Linux para ejecutar tareas programadas. Esto permite automatizar procesos que no deberían depender de la visita de un usuario al sitio.

Puedes utilizarlo para ejecutar tareas de mantenimiento, consultar información, procesar datos y administrar eventos programados de WordPress.

Listar eventos programados

wp cron event list

Ejecutar eventos pendientes

wp cron event run --due-now

Probar el sistema WP-Cron

wp cron test

El comando wp cron event run --due-now ejecuta los eventos que están pendientes de ejecución en ese momento. Debes comprobar previamente qué eventos están registrados y qué acciones realizarán.

Ejemplo de tarea programada en Linux

En un servidor Linux puedes utilizar el programador Cron para ejecutar WP-CLI periódicamente. Por ejemplo, una tarea que revisa y ejecuta eventos pendientes cada cinco minutos:

*/5 * * * * cd /home/usuario/public_html && /home/usuario/bin/wp cron event run --due-now

Ajusta la ruta de WordPress y el ejecutable WP-CLI a tu instalación. También debes revisar si el proveedor ya administra WP-Cron o si tienes configurada una tarea equivalente para evitar ejecuciones duplicadas.

Diferencia importante: WP-Cron es el sistema de tareas programadas de WordPress. Cron de Linux es el programador del sistema operativo. Ambos pueden trabajar juntos, pero no son exactamente lo mismo.

¿Cómo crear scripts de automatización con WP-CLI?

Una de las ventajas de WP-CLI es que puedes combinar sus comandos con scripts de Bash para ejecutar varias operaciones consecutivas.

Esto permite construir rutinas para revisar instalaciones, generar respaldos, comprobar versiones o mantener múltiples sitios.

Ejemplo: script de revisión de WordPress

El siguiente ejemplo consulta la versión de WordPress, verifica la instalación y muestra el estado de los plugins. No actualiza ni elimina contenido.

Bash · Auditoría básica de WordPress
#!/usr/bin/env bash

set -euo pipefail

WP_PATH="/home/usuario/public_html"

WP_BIN="/home/usuario/bin/wp"

echo "================================"
echo "AUDITORÍA BÁSICA WORDPRESS"
echo "================================"

echo ""
echo "Versión de WordPress:"

"$WP_BIN" --path="$WP_PATH" core version

echo ""
echo "Verificando instalación:"

"$WP_BIN" --path="$WP_PATH" core is-installed

echo ""
echo "Listado de plugins:"

"$WP_BIN" --path="$WP_PATH" plugin list

echo ""
echo "Listado de temas:"

"$WP_BIN" --path="$WP_PATH" theme list

echo ""
echo "Estado de la base de datos:"

"$WP_BIN" --path="$WP_PATH" db check

echo ""
echo "Auditoría finalizada."

Ejecutar el script

Guarda el contenido en un archivo llamado auditoria-wordpress.sh y dale permisos de ejecución:

chmod +x auditoria-wordpress.sh

./auditoria-wordpress.sh

Puedes ampliar este ejemplo para crear informes, registrar resultados en archivos y ejecutar controles sobre diferentes instalaciones.

Administrar varias instalaciones WordPress

Si gestionas varios dominios, puedes indicar la ruta de cada instalación utilizando --path, o configurar alias de WP-CLI para conexiones locales y remotas.

wp --path=/home/usuario/sitio1/public_html core version

wp --path=/home/usuario/sitio2/public_html core version

wp --path=/home/usuario/sitio3/public_html core version

Esta capacidad resulta útil para empresas, agencias técnicas y administradores que mantienen varios proyectos WordPress desde una misma cuenta de servidor.

¿Se puede utilizar WP-CLI en WordPress Multisite?

Sí. WP-CLI incorpora opciones para administrar instalaciones WordPress Multisite. Puedes seleccionar un sitio específico de la red mediante parámetros como --url y utilizar comandos de red cuando corresponda.

Consultar la instalación mediante una URL

wp --url=https://sitio1.dominio.cl core version

Listar sitios de una red

wp site list

Listar usuarios de la red

wp user list --network

Actualizar todos los sitios de una red

Algunas operaciones administrativas admiten opciones específicas de red, pero su disponibilidad depende del comando. Debes revisar su documentación antes de ejecutarlas.

Es importante comprender que una instalación Multisite comparte determinados recursos y mantiene configuraciones específicas para cada sitio. Una operación de red puede tener un alcance mucho mayor que una operación realizada sobre una única web.

Seguridad y buenas prácticas al utilizar WP-CLI

WP-CLI puede ejecutar operaciones administrativas directamente sobre los archivos y la base de datos de WordPress. Por eso, debes utilizarlo con precaución y mantener controles adecuados sobre el servidor.

  • Utiliza un usuario de sistema apropiado: evita ejecutar comandos de WordPress como root cuando no sea necesario.
  • Conserva copias de seguridad: especialmente antes de actualizar, importar, reemplazar o eliminar información.
  • Utiliza –dry-run: cuando el comando admita simulaciones, revisa el resultado antes de aplicar cambios.
  • Controla los permisos: limita el acceso SSH y evita conceder privilegios innecesarios.
  • No publiques credenciales: evita guardar contraseñas en scripts, historiales de terminal o repositorios.
  • Comprueba las rutas: utiliza el directorio correcto antes de realizar operaciones administrativas.
  • Actualiza de manera controlada: revisa compatibilidad y pruebas antes de actualizar plugins, temas o el núcleo.
  • Evita borrar datos sin revisar: algunos comandos tienen efectos permanentes.
  • Usa staging: prueba comandos complejos antes de ejecutarlos en producción.
  • Consulta la documentación: revisa los parámetros disponibles para cada comando.
Una advertencia: WP-CLI no es una protección de seguridad por sí mismo. Quien tiene acceso SSH y permisos suficientes para ejecutar comandos puede modificar archivos, administrar bases de datos y realizar operaciones críticas sobre WordPress.

Errores frecuentes al utilizar WP-CLI

Error Causa posible Qué revisar
wp: command not found WP-CLI no está instalado o no está en el PATH. Ruta del ejecutable y configuración del shell.
Error: This does not seem to be a WordPress installation El comando se ejecuta desde una carpeta incorrecta. Ubicación de wp-config.php y opción –path.
Permission denied El usuario no tiene permisos suficientes. Permisos del archivo, directorio y propietario.
PHP binary not found PHP CLI no está disponible o no está configurado correctamente. Instalación de PHP y variable PATH.
Error de conexión a la base de datos Configuración incorrecta o servicio MySQL/MariaDB no disponible. Credenciales, host y estado de la base de datos.
Comando no reconocido El comando pertenece a una extensión o paquete que no está instalado. Documentación, plugins y paquetes disponibles.

Diagnosticar WP-CLI

Cuando algo no funciona, comienza consultando el entorno:

php --version

wp --info

wp cli version

wp core version

También puedes utilizar el parámetro global --debug para obtener información adicional durante la ejecución:

wp --debug plugin list

Esto puede ayudar a identificar problemas de inicialización, configuración, permisos o compatibilidad.

Preguntas frecuentes sobre WP-CLI

Estas son las respuestas a las dudas más habituales sobre WP-CLI, su instalación, los comandos disponibles y su utilización en servidores WordPress.

Documentación oficial de WP-CLI y WordPress

Para profundizar en los comandos y aprender a administrar WordPress desde la terminal, consulta la documentación oficial:

Guía técnica de Ciborg sobre WP-CLI. Los comandos deben adaptarse a la ruta, permisos y configuración de cada servidor. Antes de ejecutar actualizaciones, reemplazos de base de datos o eliminaciones, realiza copias de seguridad y comprueba los resultados en un entorno de pruebas.

Carrito de compra
Scroll al inicio