¿Cómo instalar y configurar WP-CLI? 

¿Qué es WP-CLI?

WP-LI (WordPress Command Line Interface) es una herramienta de línea de comandos que te permitirá interactuar y gestionar tu sitio de WordPress de manera más eficiente. 

Con WP-CLI, los desarrolladores y administradores pueden realizar muchas tareas, como la instalación y actualización de plugins, la creación de contenido, recuperar contraseña perdida, la gestión de usuarios y mucho más, sin necesidad de acceder al panel de administración de WordPress.

¿Cómo funciona WP-CLI?

WP-CLI funciona al ejecutar comandos en la consola ya instalada, y estos interactúan con tu sitio de WordPress. Cada comando de WordPress está diseñado para realizar una tarea específica y se puede combinar con opciones y argumentos adicionales para personalizar la operación. 

Al trabajar directamente con el sistema de archivos de Cloupsy y la base de datos de WordPress, WP-CLI puede realizar operaciones rápidas y automáticas, lo que le permite gestionar múltiples sitios o realizar tareas repetitivas.

Instalación y Configuración de WP-CLI

Antes de empezar, asegúrate de que tu sistema cumple con estos requisitos:

  • Sistema operativo tipo UNIX (OS X, Linux, FreeBSD, Cygwin); el soporte para Windows es limitado.
  • PHP 5.6 o una versión posterior.
  • WordPress 3.7 o una versión posterior (las versiones anteriores pueden no funcionar correctamente).

Una vez que hayas verificado los requisitos, descarga el archivo wp-cli.phar con wget o curl

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Después, asegúrate de que el archivo Phar esté funcionando correctamente:

php wp-cli.phar --info

Para usar WP-CLI con el comando WP desde la línea de comandos, haz que el archivo sea ejecutable y muévelo a un directorio que esté en tu PATH. Por ejemplo:

chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Si la instalación de WP-CLI fue exitosa, deberías ver información similar a esta al ejecutar wp –info:

$ wp --info
OS:     Linux 4.19.128-microsoft-standard #1 SMP Tue Jun 23 12:58:10 UTC 2020 x86_64
Shell:  /usr/bin/zsh
PHP binary:     /usr/bin/php
PHP version:    8.0.5
php.ini used:   /etc/php/8.0/cli/php.ini
MySQL binary:   /usr/bin/mysql
MySQL version:  mysql  Ver 8.0.23-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))
SQL modes:
WP-CLI root dir:        /home/wp-cli/
WP-CLI vendor dir:      /home/wp-cli/vendor
WP_CLI phar path:

WP-CLI packages dir:    /home/wp-cli/.wp-cli/packages/

WP-CLI global config:
WP-CLI project config:  /home/wp-cli/wp-cli.yml
WP-CLI version: 2.9.0

Comandos Más Frecuentes de WP-CLI

1. Instalación y Actualización de WordPress

Instalar wordpress: 

wp core download
wp config create --dbname=nombre_base_datos --dbuser=usuario --dbpass=contraseña --dbhost=localhost
wp core install --url=https://tusitio.com --title="Título del Sitio" --admin_user=admin --admin_password=contraseña [email protected]
  • Actualizar WordPress:
wp core update
wp core update-db

2. Gestión de Plugins

  • Instalar un Plugin: 
        wp plugin install nombre_del_plugin --activate
  • Actualizar Todos los Plugins:
wp plugin update --all
  • Desactivar un Plugin:
wp plugin deactivate nombre_del_plugin

3. Gestión de Temas

  • Instalar un Tema:
wp theme install nombre_del_tema --activate
  • Actualizar Todos los Temas:
wp theme update --all
  • Activar un Tema:
wp theme activate nombre_del_tema

4. Gestión de Usuarios

  • Crear un Usuario:
wp user create nombre_usuario [email protected] --role=autor --user_pass=contraseña
  • Cambiar el Rol de un Usuario:
       wp user set-role nombre_usuario editor
  • Eliminar un Usuario:
wp user delete nombre_usuario

5. Gestión de Contenido

  • Crear una Entrada:
wp post create --post_type=post --post_title="Título de la Entrada" --post_status=publish --                  post_content="Contenido de la entrada."
  • Actualizar una Entrada:
wp post update ID --post_title="Nuevo Título" --post_content="Nuevo contenido."
  • Eliminar una Entrada:
wp post delete ID

WP-CLI es una herramienta indispensable y flexible que puede ahorrarte  tiempo y esfuerzo en la gestión de sitios WordPress.