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 complementos.
    deactivate            Desactiva uno o más complementos.
    delete                Elimina los archivos de los complementos sin desactivar o desinstalar.
    get                   Obtiene detalles sobre un complemento instalado.
    install               Instala uno o más complementos.
    is-active             Mira si el complemento dado está activo.
    is-installed          Mira si el complemento dado está instalado.
    list                  Obtiene una lista de complementos.
    path                  Obtiene el camino a un complemento o el directorio del complemento.
    search                Busca el directorio del complemento WordPress.org.
    status                Revela el estado de uno o todos los complementos.
    toggle                Alterna el estado de activación del complemento.
    uninstall             Desinstala uno o más complementos.
    update                Actualiza uno o más complementos.
    verify-checksums      Verifica los archivos del complemento 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 complemento 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

Mira la versión de wp-cli

[server]$ wp cli version

Mira las actualizaciones

[server]$ wp cli check-update

Actualiza wp-cli

[server]$ wp cli update

 

Comandos principales

Estos comandos son los más usados.

Complementos

Obtiene el nombre correcto del complemento

El nombre que usas cuando ingresas el PLUGIN_NAME debe ser del sitio web del complemento. 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 complemento que necesitas ingresar en los comandos de abajo.

Acción Comando

Ver los complementos instalados

[server]$ wp plugin list

Instalar un complemento

[server]$ wp plugin install PLUGIN_NAME

Activar un complemento

[server]$ wp plugin activate PLUGIN_NAME

Deactivate a plugin

[server]$ wp plugin deactivate PLUGIN_NAME
-or-
[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
Mira la versión actual de WordPress
[server]$ wp core version
Mira 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
Mira una lista de los usuarios actuales
[server]$ wp user list

Crea un nuevo usuario mientrasusas su correo yrol. 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
Corre 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
Corre 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
Limpia el caché de tu sitio
[server]$ wp cache flush
Limpia el caché de wp-cli
[server]$ wp cli cache clear

Bases de datos

Acción Comando
Mira el estado de la base de datos
[server]$ wp db check
Optimiza la base de datos
[server]$ wp db optimize
Repara la base de datos
[server]$ wp db repair
Busca 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
Limpia 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
Mira el home y siteurl
[server]$  wp option list | grep -E "^(siteurl|home)"
Actualiza 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
Mira 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?