Cómo usar WP-CLI para automatizar tareas

Contents

Cómo usar WP-CLI para automatizar tareas

En el ecosistema de desarrollo de WordPress, WP-CLI (WordPress Command Line Interface) se ha convertido en la herramienta de referencia para gestionar instalaciones, extensiones y contenido desde la terminal. Su versatilidad y rapidez permiten a desarrolladores, administradores de sistemas y agencias optimizar flujos de trabajo, reducir errores manuales y automatizar procesos repetitivos.

¿Qué es WP-CLI

WP-CLI es una aplicación de línea de comandos construida en PHP que permite ejecutar más de 200 comandos diferentes para interactuar con un sitio de WordPress. Desde la instalación inicial hasta la gestión de usuarios, bases de datos, plugins, temas y contenido, WP-CLI ofrece una alternativa ligera a los tradicionales paneles de administración web.

Para más detalles, consulta la documentación oficial en
wp-cli.org.

Ventajas de usar WP-CLI

  • Rapidez: Ejecución inmediata de comandos sin necesidad de interfaces gráficas.
  • Automatización: Integración en scripts y cron jobs para tareas periódicas.
  • Consistencia: Evita errores manuales al repetir procesos idénticos.
  • Escalabilidad: Gestión simultánea de múltiples entornos o servidores.
  • Flexibilidad: Extensible mediante aliases y comandos personalizados.

Requisitos previos

Antes de comenzar, asegúrate de contar con:

  • Acceso a la línea de comandos (SSH) en el servidor.
  • PHP 5.4 o superior instalado.
  • Instalación funcional de WordPress (archivo wp-config.php presente).
  • Permisos de ejecución sobre el directorio de WordPress.

Instalación de WP-CLI

El método recomendado para instalar WP-CLI es descargar el archivo wp y otorgarle permisos de ejecución:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
php wp-cli.phar --info
chmod  x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
wp --info
  

Tras estos pasos, el comando wp estará disponible globalmente.

Comandos básicos de WP-CLI

WP-CLI organiza sus comandos en subcomandos. A continuación se muestra una tabla con los más comunes:

Comando Descripción
wp core install Instala WordPress en un directorio.
wp plugin install Instala uno o varios plugins.
wp theme activate Activa un tema disponible.
wp user create Crea un usuario nuevo.
wp db export Exporta la base de datos a un archivo.

Automatización con scripts y cron

Una de las grandes fortalezas de WP-CLI es su integración en scripts shell que se pueden programar mediante cron. A continuación, un ejemplo de script para respaldo diario de base de datos y plugins:

#!/usr/bin/env bash
# wp-backup.sh

# Variables
WP_PATH=/var/www/html/mi-sitio
BACKUP_DIR=/backups/wp
DATE=(date  %Y%m%d_%H%M)
DB_FILE=db_DATE.sql
PLUGINS_DIR=plugins_DATE.tar.gz

# Crear directorio de respaldo
mkdir -p BACKUP_DIR

# Exportar base de datos
wp --path=WP_PATH db export BACKUP_DIR/DB_FILE

# Empaquetar carpeta de plugins
tar czf BACKUP_DIR/PLUGINS_DIR -C WP_PATH/wp-content/plugins .

# Mensaje
echo Respaldo completado: DATE
  

Programa este script en crontab -e:

30 2    /ruta/a/wp-backup.sh >> /var/log/wp-backup.log 2>1
  

Ejemplos prácticos de automatización

  1. Actualización masiva de plugins:

    wp plugin update --all --allow-root
          
  2. Creación automatizada de usuarios:

    wp user generate --count=10 --role=subscriber
          
  3. Sincronización de entornos (estaging producción):

    Puedes exportar la base de datos en staging y luego importarla en producción sin permisos manuales:

    wp --path=/var/www/staging db export /tmp/staging.sql
    scp /tmp/staging.sql user@produccion:/tmp/
    ssh user@produccion wp --path=/var/www/html/db db import /tmp/staging.sql  wp cache flush
          

Mejores prácticas y recomendaciones

  • Realiza copias de seguridad previas a las actualizaciones automáticas.
  • Utiliza aliases en ~/.wp-cli/config.yml para abreviar comandos repetitivos.
  • Controla los outputs y errores redirigiendo logs.
  • Asegura distintas credenciales para entornos de desarrollo y producción.
  • Mantén WP-CLI actualizado (wp cli update).

Recursos adicionales

Artículo elaborado por un especialista en WordPress y entornos de desarrollo. © 2024


Acepto donaciones de BAT's mediante el navegador Brave 🙂



Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *