Cómo instalar y utilizar WP-CLI en Ubuntu
WP-CLI es la herramienta de línea de comandos para interactuar y gestionar tus sitios WordPress. Con WP-CLI, puedes instalar y actualizar plugins y temas, y configurar instalaciones multisitio sin utilizar un navegador web. Es una herramienta muy útil para depurar problemas cuando la interfaz de WordPress no funciona.
Este tutorial te explicará cómo instalar WP-CLI y realizar algunas tareas básicas con él.
Requisitos
- Un servidor que ejecute Ubuntu 22.04 o posterior.
- Una contraseña de root configurada en tu servidor.
Cómo empezar
Antes de empezar, necesitarás actualizar tu sistema con la última versión. Puedes hacerlo ejecutando el siguiente comando:
apt-get update -y apt-get upgrade -y
Una vez actualizado tu servidor, reinícialo para aplicar los cambios.
Instalar el servidor LAMP
En primer lugar, tendrás que instalar Apache, MariaDB y PHP en tu sistema. Puedes instalarlos todos ejecutando el siguiente comando:
apt-get install apache2 mariadb-server php php-cli php-common php-curl php-gd php-mbstring php-xml php-xmlrpc php-zip php-mysql -y
Una vez instalados todos los paquetes, puedes proceder a instalar WP-CLI.
Instalar WP-CLI
La herramienta WP-CLI está disponible en un archivo .phar. Puedes descargarlo con el siguiente comando:
wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Una vez descargado, mueve el archivo descargado al directorio /usr/bin:
mv wp-cli.phar /usr/bin/wpcli
A continuación, proporciona permiso de ejecución al archivo wpcli con el siguiente comando:
chmod +x /usr/bin/wpcli
A continuación, comprueba la instalación de WP-CLI con el siguiente comando:
wpcli --info
Si todo va bien, deberías obtener la siguiente salida:
Shell: /bin/bash PHP binary: /usr/bin/php7.4 php.ini used: /etc/php/7.4/cli/php.ini WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli WP-CLI vendor dir: phar://wp-cli.phar/vendor WP_CLI phar path: /root WP-CLI packages dir: WP-CLI global config: WP-CLI project config: WP-CLI version: 2.3.0
Activar la finalización bash
La finalización bash es una función de WP-CLI que te permite listar todos los comandos disponibles pulsando Tabulador.
Para ello, tendrás que descargar el script bash del repositorio Git:
wget https://github.com/wp-cli/wp-cli/raw/master/utils/wp-completion.bash
A continuación, añade la ruta del script bash en el archivo .bashrc para que wp-completion se cargue automáticamente.
nano .bashrc
Añade la siguiente línea:
source /root/wp-completion.bash
Guarda y cierra el archivo y, a continuación, vuelve a cargar el perfil bash con el siguiente comando:
source ~/.bashrc
Ahora, puedes probarlo escribiendo wpcli y pulsando Tab dos veces. Deberías ver la lista de comandos disponibles con wp.
Instalar WordPress con WP-CLI
En esta sección, aprenderemos a descargar e instalar WordPress con WP-CLI.
Crear base de datos para WordPress
En primer lugar, inicia sesión en MariaDB y crea una base de datos para WordPress:
mysql -u root -p
Proporciona tu contraseña de root y luego crea una base de datos y un usuario para WordPress con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE wp; MariaDB [(none)]> CREATE USER 'wpuser' IDENTIFIED BY 'password';
A continuación, concede todos los privilegios a la base de datos de WordPress con el siguiente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON wp.* TO 'wpuser';
A continuación, elimina los privilegios y sal del intérprete de comandos MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Una vez hecho esto, puedes pasar al siguiente paso.
Descargar e instalar WordPress
En primer lugar, cambia el directorio a raíz web de Apache y dale los permisos adecuados con el siguiente comando:
cd /var/www/html chown -R www-data:www-data /var/www/html/
A continuación, descarga el código fuente de WordPress ejecutando WP-CLI como usuario www-data:
sudo -u www-data wp core download
Deberías ver la siguiente salida:
md5 hash verified: aea5bb5e4fd51034f67c85e6d8bc6bbf Success: WordPress downloaded.
A continuación, genera el archivo wp-config.php con el siguiente comando:
sudo -u www-data wpcli core config --dbname='wp' --dbuser='wpuser' --dbpass='password' --dbhost='localhost' --dbprefix='wp_'
Deberías ver el siguiente resultado:
Success: Generated 'wp-config.php' file.
No olvides sustituir wpuser y password por tu usuario y contraseña de la base de datos de WordPress.
Ahora, inicia la instalación de WordPress con el siguiente comando:
sudo -u www-data wpcli core install --url='http://example.com' --title='My WordPress Blog' --admin_user='wpadmin' --admin_password='password' --admin_email='[email protected]'
Por favor, sustituye el nombre de dominio, el adminuser y la contraseña según tus necesidades.
Ahora, abre tu navegador web y escribe la URL http://example.com/wp-admin. Se te redirigirá a la página de inicio de sesión de WordPress como se muestra a continuación:
Introduce tu nombre de usuario y contraseña de administrador, y haz clic en el botón Iniciar sesión. Deberías ver el panel de WordPress en la siguiente página:
Una vez hecho esto, puedes pasar al siguiente paso.
Instalar temas y plugins
Puedes instalar plugins y temas fácilmente utilizando la herramienta de línea de comandos WP-CLI.
Primero, lista todos los plugins instalados con el siguiente comando:
sudo -u www-data wpcli plugin list
Salida:
+---------+----------+--------+---------+ | name | status | update | version | +---------+----------+--------+---------+ | akismet | inactive | none | 4.1.2 | | hello | inactive | none | 1.7.2 | +---------+----------+--------+---------+
También puedes listar todos los temas instalados con el siguiente comando:
sudo -u www-data wpcli theme list
Salida:
+-----------------+----------+--------+---------+ | name | status | update | version | +-----------------+----------+--------+---------+ | twentynineteen | active | none | 1.4 | | twentyseventeen | inactive | none | 2.2 | | twentysixteen | inactive | none | 2.0 | +-----------------+----------+--------+---------+
Ahora, busca e instala el plugin «WP Super Cache» con el siguiente comando:
sudo -u www-data wpcli plugin search "WP Super Cache"
Salida:
Success: Showing 10 of 508 plugins. +------------------------------------------------------------------+--------------------------------------+--------+ | name | slug | rating | +------------------------------------------------------------------+--------------------------------------+--------+ | WP Super Cache | wp-super-cache | 86 | | Autoptimize | autoptimize | 94 | | WP Fastest Cache | wp-fastest-cache | 96 | | WP-Optimize – Clean, Compress, Cache. | wp-optimize | 98 | | WP Super Cache – Clear all cache | wp-super-cache-clear-cache-menu | 66 | | WPS Hide Login | wps-hide-login | 98 | | Cerber Security, Antispam & Malware Scan | wp-cerber | 98 | | Minimal Coming Soon & Maintenance Mode – Coming Soon Builder | minimal-coming-soon-maintenance-mode | 96 | | Hummingbird – Speed up, Cache, Optimize Your CSS and JS | hummingbird-performance | 96 | | CAOS | Host Google Analytics Locally | host-analyticsjs-local | 96 | +------------------------------------------------------------------+--------------------------------------+--------+
Ahora, instala y activa el plugin wp-super-cache con el siguiente comando:
sudo -u www-data wpcli plugin install wp-super-cache sudo -u www-data wpcli plugin activate wp-super-cache
Deberías ver la siguiente salida:
Plugin 'wp-super-cache' activated. Success: Activated 1 of 1 plugins.
A continuación, instala y activa el tema islemag con el siguiente comando:
sudo -u www-data wpcli theme install islemag sudo -u www-data wpcli theme activate islemag
Actualizar WordPress y plugins
Si quieres actualizar un plugin específico de WordPress, ejecuta el siguiente comando:
sudo -u www-data wpcli plugin update wp-super-cache
Si quieres actualizar tu WordPress, ejecuta los siguientes comandos:
sudo -u www-data wpcli core update sudo -u www-data wpcli core update-db
Comando básico WP-CLI
Para comprobar la versión de tu WordPress, ejecuta el siguiente comando:
sudo -u www-data wpcli core version
Deberías ver la siguiente salida:
5.2.2
Para comprobar si hay alguna actualización disponible para WordPress, ejecuta el siguiente comando:
sudo -u www-data wpcli core check-update
Para borrar la caché de WordPress, ejecuta el siguiente comando:
sudo -u www-data wpcli cache flush
Para actualizar todos los plugins, ejecuta el siguiente comando:
sudo -u www-data wpcli plugin update --all
Para desactivar todos los plugins, ejecuta el siguiente comando:
sudo -u www-data wpcli plugin deactivate --all
También puedes ver la lista de comandos disponibles con WP-CLI utilizando el siguiente comando:
sudo -u www-data wpcli --help
Deberías ver la siguiente salida:
NAME wp DESCRIPTION Manage WordPress through the command-line. SYNOPSIS wpSUBCOMMANDS cache Adds, removes, fetches, and flushes the WP Object Cache object. cap Adds, removes, and lists capabilities of a user role. cli Review current WP-CLI info, check for updates, or see defined aliases. comment Creates, updates, deletes, and moderates comments. config Generates and reads the wp-config.php file. core Downloads, installs, updates, and manages a WordPress installation. cron Tests, runs, and deletes WP-Cron events; manages WP-Cron schedules. db Performs basic database operations using credentials stored in wp-config.php. embed Inspects oEmbed providers, clears embed cache, and more. eval Executes arbitrary PHP code. eval-file Loads and executes a PHP file. export Exports WordPress content to a WXR file. help Get help on WP-CLI, or on a specific command. i18n Provides internationalization tools for WordPress projects. import Imports content from a given WXR file. language Installs, activates, and manages language packs. maintenance-mode Activates, deactivates or checks the status of the maintenance mode of a site. media Imports files as attachments, regenerates thumbnails, or lists registered image sizes. menu Lists, creates, assigns, and deletes the active theme's navigation menus. network Perform network-wide operations. option Retrieves and sets site options, including plugin and WordPress settings. package Lists, installs, and removes WP-CLI packages. plugin Manages plugins, including installs, activations, and updates. post Manages posts, content, and meta.
Conclusión
El tutorial anterior te ha enseñado a instalar WP-CLI en un servidor Debian. También has aprendido a utilizar WP-CLI para instalar y gestionar WordPress, plugins y temas. Para más información sobre el comando WP-CLI, visita la documentación de WP-CLI en WP-CLI.