Generalidades sobre WordPress wp-cli

Generalidades

La Interfaz de Línea de Comando de WordPress (wp-cli) es una herramienta de línea de comando de WordPress instalada en todos los servidores de DreamHost. wp-cli te permite correr comandos de WordPress desde tu terminal Shell para administrar tu sitio WordPress sin tener que iniciar sesión en el panel de WordPress.

Necesitarás iniciar sesión en tu servidor vía SSH para usar wp-cli. Mira los siguientes artículos para ver información de como crear un usuario Shell e iniciar sesión en tu servidor.

Después de iniciar sesión en tu servidor, asegúrate de estar en el directorio del sitio web. Allí es donde corerrás los comandos de este artículo.

Ejemplos de comandos en este artículo

 

General

Estos son unos de los comandos generales para empezar.

Ver todos los comandos de wp-cli

[server]$ wp

Una lista de comandos disponibles se muestra.

Usar --help para ver la información de los comandos

Para obtener más información sobre un comando en especifico, corre la opción --help.

[server]$ wp plugin --help

Esto imprime una lista de subcomandos disponibles. Por ejemplo:

SUBCOMANDOS
  
    activate              Activa uno o más plugins.
    deactivate            Desactiva uno o más plugins.
    delete                Elimina los archivos de los plugins sin desactivar o desinstalar.
    get                   Obtiene detalles sobre un plugin instalado.
    install               Instala uno o más plugins.
    is-active             Mira si el plugin dado está activo.
    is-installed          Mira si el plugin dado está instalado.
    list                  Obtiene una lista de plugins.
    path                  Obtiene el camino a un plugin o el directorio del plugin.
    search                Busca el directorio del plugin WordPress.org.
    status                Revela el estado de uno o todos los plugins.
    toggle                Alterna el estado de activación del plugin.
    uninstall             Desinstala uno o más plugins.
    update                Actualiza uno o más plugins.
    verify-checksums      Verifica los archivos del plugin contra la suma de comprobación de WordPress.org.  

Luego puedes agregar uno de estos subcomandos al comando principal para realizar una acción. Así es como instalarías un plugin llamado hello-dolly:

[server]$ wp plugin install hello-dolly
  Installing Hello Dolly (1.6)
  Downloading install package from https://downloads.wordpress.org/plugin/hello-dolly.1.6.zip...
  Unpacking the package...
  Installing the plugin...
  Plugin installed successfully.  

Versiones de wp cli

Acción Comando

Mirar la versión de wp-cli

[server]$ wp cli version

Mirar las actualizaciones

[server]$ wp cli check-update

Actualizar wp-cli

[server]$ wp cli update

 

Comandos principales

Estos comandos son los más usados.

Plugins

Obtiene el nombre correcto del plugin

El nombre que usas cuando ingresas el PLUGIN_NAME debe ser del sitio web del plugin. Por ejemplo, si quisieras instalar W3 Total Cache deberás visitar esta página:

Puedes ver que termina con w3-total-cache. Éste es el nombre del plugin que necesitas ingresar en los comandos de abajo.

Acción Comando

Ver los plugins instalados

[server]$ wp plugin list

Instalar un plugin

[server]$ wp plugin install PLUGIN_NAME

Activar un plugin

[server]$ wp plugin activate PLUGIN_NAME

Desactivar un plugin

[server]$ wp plugin deactivate PLUGIN_NAME
-o-
[server]$ wp plugin toggle PLUGIN_NAME

Temas

Acción Comando

Ver los temas instalados

[server]$ wp theme list

Instalar un tema

[server]$ wp theme install THEME_NAME

Activar un tema diferente

[server]$ wp theme activate THEME_NAME

Actualizar un tema

[server]$ wp theme update THEME_NAME

Actualizar WordPress

Acción Comando
Mirar la versión actual de WordPress
[server]$ wp core version
Mirar las actualizaciones de versiones de WordPress
[server]$ wp core check-update
Actualizar WordPress a una nueva versión
[server]$ wp core update
y

Forzar la descarga de todos los archivos principales. Esto obliga a que los archivos principales de WordPress se vuelvan a descargar en tu directorio actual y sobrescriban los archivos principales que ya existen.

[server]$ wp core download --force

Usuarios

Crear usuarios

Acción Comando
Mirar una lista de los usuarios actuales
[server]$ wp user list

Crear un nuevo usuario mientrasusas su correo y rol. Una nueva contraseña se imprima en la terminal luego que el usuario es creado.

[server]$ wp user create newusername admin@example.com --role=administrator

Cambiar una contraseña

Acción Comando
Correr wp user list para obtener el número de identificación de un usuario. Usa ese número para actualizar su contraseña. Este ejemplo cambia un usuario con su ID3. Necesitarás informar al usuario del cambio de contraseña.
[server]$ wp user update 3 --user_pass=NEW_PASSWORD

Eliminar un usuario

Acción Comando
Correr wp user list para obtener el número de identificación del usuario que deseas eliminar y el usuario al que deseas reasignar sus publicaciones. Deberás reasignar las publicaciones a otro usuario para que no se eliminen de forma permanente. Este ejemplo elimina un usuario con un número de ID de 13 y reasigna sus publicaciones al usuario 7.
[server]$ wp user delete 13 --reassign=7

 

Solución de problemas

Caché

Acción Comando
Limpiar el caché de tu sitio
[server]$ wp cache flush
Limpiar el caché de wp-cli
[server]$ wp cli cache clear

Bases de datos

Acción Comando
Mirar el estado de la base de datos
[server]$ wp db check
Optimizar la base de datos
[server]$ wp db optimize
Reparar la base de datos
[server]$ wp db repair
Buscar texto en la base de datos.
Esto busca la palabra hello
[server]$ wp db search hello
Actualizar la versión de la base de datos
[server]$ wp core update-db

Permalinks

Acción Comando
Limpiar los permalinks. Esto es lo mismo que guardarlos nuevamente en el panel.
[server]$  wp rewrite flush

 

Cambios personalizados

Actualizar home y siteurl

Acción Comando
Mirar el home y siteurl
[server]$  wp option list | grep -E "^(siteurl|home)"
Actualizar la URL de home
[server]$ wp option update home https://example.com
Actualizar siteurl
[server]$ wp option update siteurl https://example.com

Importar y exportar un archivo WXR

Puedes usar los comandos import y export para administrar los datos de tu sitio con un archivo WXR. Mira el siguiente artículo para más detalles.

Search and Replace

Busca y reemplaza texto en tu base de datos. Asegúrate de usar la banderilla --dry-run la primera vez para ver que va a cambiar.

[server]$ wp search-replace http://example.com https://example.com/blog --dry-run

Aparece una lista de campos que se actualizarán en tu terminal. Si deseas actualizar todos los resultados que se muestran, corre el comando nuevamente sin la banderilla --dry-run.

[server]$ wp search-replace http://example.com https://example.com/blog

wp-config.php

Acción Comando
Mirar todas las configuraciones en tu archivo wp-config.php
[server]$ wp config list
Actualizar una configuración en tu archivo wp-config.php.
Esto actualiza el valor DB_HOST.
[server]$ wp config set DB_HOST mysql.example.com

Actualizar la versión de PHP para usuarios wp-cli

  1. Ve la versión actual de PHP y su ubicación corriendo el siguiente comando:
    [server]$ wp cli info
    OS:     Linux 3.14.52-vs2.3.6.15-1 #1 SMP Wed Nov 2 10:45:38 UTC 2016 x86_64
    Shell:  /bin/bash
    PHP binary:     /usr/bin/php
    PHP version:    7.4.14
    php.ini used:   /etc/php74/php.ini
    MySQL binary:   /usr/bin/mysql
    MySQL version:  mysql  Ver 15.1 Distrib 10.3.27-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
    SQL modes:
    WP-CLI root dir:        /usr/local/wp
    WP-CLI vendor dir:      /usr/local/wp/vendor
    WP_CLI phar path:
    WP-CLI packages dir:
    WP-CLI global config:   /usr/local/wp/config.yml
    WP-CLI project config:
    WP-CLI version: 2.5.0-alpha
  2. Para cambiar la versión que PHP wp-cli usa, agrega la siguiente línea a tu .bash_profile. Cambia la versión como necesites. Este ejemplo usa PHP 8.0.
    export WP_CLI_PHP=/usr/local/php80/bin/php wp
  3. Actualiza el .bash_profile:
    [server]$ . ~/.bash_profile
  4. Finalmente, selecciona para confirmar si wp-cli está usando ésta nueva versión.
    [server]$ wp cli info
    OS:     Linux 4.14.117-grsec-grsec+ #1 SMP Fri May 10 17:15:47 PDT 2019 x86_64
    Shell:  /bin/bash
    PHP binary:     /usr/local/php80/bin/php
    PHP version:    8.0.2
    php.ini used:   /etc/php80/php.ini
    MySQL binary:   /usr/bin/mysql
    MySQL version:  mysql  Ver 14.14 Distrib 5.7.33, for Linux (x86_64) using  EditLine wrapper
    SQL modes:
    WP-CLI root dir:        /usr/local/wp
    WP-CLI vendor dir:      /usr/local/wp/vendor
    WP_CLI phar path:
    WP-CLI packages dir:
    WP-CLI global config:   /usr/local/wp/config.yml
    WP-CLI project config:
    WP-CLI version: 2.5.0-alpha

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?