Nuestra guía para la estructura de comandos de WP-CLI

Publicado: 2022-06-29

La interfaz de línea de comandos de WordPress (WP-CLI) es una herramienta increíble para mejorar su flujo de trabajo de desarrollo. Comprender cómo se estructuran los comandos es clave para utilizar WP-CLI en todo su potencial. En este artículo, aprenderá cómo estructurar los comandos WP-CLI, incluido cómo usar los comandos principales y secundarios, así como los parámetros y los interruptores.

Antes de sumergirse en la creación de comandos, deberá instalar WP-CLI. El método exacto difiere según el sistema operativo, pero nuestra guía para instalar y configurar WP-CLI tiene todo lo que necesita.

Comandos principales y subcomandos

Casi todos los comandos de WP-CLI están estructurados de la misma manera. Hay un comando principal para cada área más grande de funcionalidad, como wp core para trabajar con la instalación principal de WordPress. Cada uno de estos comandos principales se puede usar con varios subcomandos diferentes y se debe usar con al menos uno.

Los comandos de los padres sientan las bases

Ningún comando principal hará nada útil por sí solo. Por ejemplo, si intenta usar wp config solo, verá algo como esto:

~$ configuración wp
uso: wp config create --dbname= --dbuser= [--dbpass= ] [--dbhost= ] [--dbprefijo= ] [--dbcharset= ] [--dbcollate= ] [--localidad= ] [--extra-php] [--skip-salts] [--skip-check] [--force] [--config-file= ] [--inseguro]
   o: eliminación de configuración de wp [--tipo= ] [--archivo de configuración= ]
   o: wp config editar [--config-file= ]
   o: wp config obtener [--tipo= ] [--formato= ] [--archivo de configuración= ]
   o: wp config tiene [--tipo= ] [--archivo de configuración= ]
   o: lista de configuración de wp [ ...] [--campos= ] [--formato= ] [--strict] [--config-file= ]
   o: ruta de configuración de wp
   o: conjunto de configuración de wp [--añadir] [--sin procesar] [--anclaje= ] [--ubicación= ] [--separador= ] [--tipo= ] [--archivo de configuración= ]
   o: wp config shuffle-sales [ ...] [--force] [--config-file= ] [--inseguro]

Consulte 'wp help config' para obtener más información sobre un comando específico.

Eso por sí solo le da algunas pistas bastante buenas sobre cómo usaría el comando wp config . Puede obtener una mejor comprensión siguiendo sus consejos e ingresando wp help config .

NOMBRE

  configuración wp

DESCRIPCIÓN

  Genera y lee el archivo wp-config.php.

SINOPSIS

  configuración wp

SUBCOMANDOS

  create Genera un archivo wp-config.php.
  delete Elimina una constante o variable específica del archivo wp-config.php.
  editar Inicia el editor del sistema para editar el archivo wp-config.php.
  get Obtiene el valor de una constante o variable específica definida en el archivo wp-config.php.
  has Comprueba si existe una constante o variable específica en el archivo wp-config.php.
  list Enumera variables, constantes y archivos incluidos definidos en el archivo wp-config.php.
  ruta Obtiene la ruta al archivo wp-config.php.
  set Establece el valor de una constante o variable específica definida en el archivo wp-config.php.
  shuffle-salts Actualiza las sales definidas en el archivo wp-config.php.

PARÁMETROS GLOBALES

  --ruta=

Hay más de 40 comandos principales en total en la instalación principal de WP-CLI. Algunos complementos populares, como WooCommerce y BuddyPress, agregan sus propios comandos principales, por lo que su instalación de WordPress puede tener aún más. En la mayoría de los casos, puede averiguar cómo usar el comando ingresando wp help seguido del nombre del comando principal.

Comprender un poco cómo se agrupan ayuda a aprender a usar WP-CLI. Vale la pena señalar que los comandos WP-CLI casi siempre usan sustantivos singulares en los comandos. Por ejemplo, el comando principal para la administración de usuarios se denomina wp user en lugar de "usuarios wp". Mientras recuerde eso, encontrará que su intuición a menudo es correcta. El comando para administrar los comentarios es, de hecho, wp comment y wp cron es el comando que usaría para administrar los horarios y eventos de WP-Cron.

Puede encontrar una hoja de trucos con algunos de los comandos principales más utilizados a continuación.

Dominio Descripción
núcleo wp Trabajar con instalaciones de WordPress.
configuración wp Generando y leyendo wp-config.php.
complemento wp Gestión de complementos.
tema wp Manejo de temas.
usuario wp Gestión de usuarios.
medios de wp Trabajar con imágenes y otros archivos multimedia
wp ayuda Ayuda general. Siga con un comando para obtener información más específica.
opción wp Configuración de las opciones del sitio, incluidas las opciones de complementos y WordPress.
sitio wp Administrar sitios en una instalación multisitio.

Los subcomandos dan dirección

Como mencioné anteriormente, ninguno de esos comandos funciona realmente por sí solo. También necesitamos especificar un subcomando si vamos a llegar a alguna parte. Recomiendo encarecidamente configurar la finalización de pestañas. Esto le permitirá ver fácilmente los subcomandos. Por ejemplo, al usar la función de completar con tabulación, podemos ver los subcomandos para el plugin :

 $ wp plugin [TAB] activate get list toggle auto-updates install path uninstall deactivate is-active search update delete is-installed status verify-checksums

Presionar enter sin especificar el subcomando hará que WP-CLI presente ayuda adicional:

 $ wp plugin usage: wp plugin activate [<plugin>...] [--all] [--network] or: wp plugin auto-updates <command> or: wp plugin deactivate [<plugin>...] [--uninstall] [--all] [--network] or: wp plugin delete [<plugin>...] [--all] or: wp plugin get <plugin> [--field=<field>] [--fields=<fields>] [--format=<format>] or: wp plugin install <plugin|zip|url>... [--version=<version>] [--force] [--activate] [--activate-network] [--insecure] ....

¿Nota una diferencia en cómo se presentan los parámetros en el texto de ayuda anterior? Algunos están encapsulados en marcas < > , otros tienen el prefijo guiones dobles -- . Eso no es una coincidencia; son diferentes tipos de parámetros. Volveremos a eso en un momento.

Es bueno trabajar con WP-CLI, ya que a menudo podrá brindarle un poco más de información sobre cada subcomando y los parámetros que espera. Esto es muy consistente en todos los comandos integrados de WP-CLI. Siempre que no escriba un comando completo con todos los parámetros esperados, le dará más información sobre lo que esperaba.

Hoja de referencia de comandos populares de WP-CLI

La siguiente hoja de trucos muestra algunos de los subcomandos más comunes y los comandos principales con los que van. Hay muchísimos más subcomandos disponibles que los que se enumeran aquí. Algunos comandos principales, como wp comment , tienen más de una docena de subcomandos, mientras que otros, como wp cron , tienen solo unos pocos.

Núcleo de WP

DOMINIO DESCRIPCIÓN
descarga del núcleo de wp Descarga los archivos principales de WordPress.
instalación del núcleo de wp Instala WordPress.
actualización del núcleo de wp Actualiza WordPress a una versión más nueva.

Configuración de WP

DOMINIO DESCRIPCIÓN
creación de configuración de wp Crea un nuevo archivo `wp-config.php`.
edición de configuración de wp Inicia el editor del sistema para editar el archivo de configuración.
actualización del núcleo de wp Muestra las variables, constantes y archivos incluidos definidos en el archivo `wp-config.php`.

Tema de WordPress

DOMINIO DESCRIPCIÓN
instalación del tema wp Instala el tema.
activación del tema wp Activa el tema.
actualizaciones automáticas del tema wp Gestiona las actualizaciones automáticas.
Desactivar tema wp Desactiva el tema seleccionado.

Complemento WP

DOMINIO DESCRIPCIÓN
instalación del complemento wp Instala el tema.
complemento wp activar Activa el complemento.
actualizaciones automáticas del complemento wp Gestiona las actualizaciones automáticas.
complemento wp desactivar Desactiva el complemento seleccionado.

Parámetros e interruptores

Además de un comando principal y un subcomando, la mayoría de los comandos necesitan al menos un parámetro para poder hacer algo útil. Por ejemplo, si desea instalar un complemento, debe especificar qué complemento instalar. Naturalmente, lo mismo ocurre con la activación o eliminación de un complemento.

Básicamente, hay tres tipos de parámetros que usará con WP-CLI: parámetros ordenados, parámetros con nombre e interruptores.

Parámetros ordenados

Si un comando necesita más de un parámetro regular, siempre deben ordenarse correctamente para que el comando funcione. Por eso se llaman parámetros ordenados . Siempre están separados por un solo espacio. Si el valor del parámetro en sí contiene espacios, debe estar entre comillas.

En el texto de ayuda de un comando, los parámetros ordenados están rodeados por < y > . En el siguiente ejemplo de intentar usar wp post get sin ningún parámetro, vemos que id es un parámetro ordenado porque está encerrado entre < y > .

 $ wp post get usage: wp post get <id> [--field=<field>] [--fields=<fields>] [--format=<format>]

Parámetros con nombre

WP-CLI también funciona mucho con parámetros con nombre . Estos se pueden dar en cualquier orden. Un parámetro con nombre se reconoce por los guiones dobles antes del nombre y la presencia de un signo igual entre el nombre y el valor.

Por ejemplo, al mirar el texto de ayuda para wp post get above, vemos que los parámetros de format y fields tienen el prefijo de guiones dobles. Así es como sabemos que son parámetros con nombre para este comando.

Ordenar realmente no importa:

 # This will get the the title field for post id 1 in JSON format $ wp post get 1 --fields=title --format=json # This is the same command, order of named parameters doesn't matter: $ wp post get 1 --format=json --fields=title # This is also exactly the same, you can put named parameters before the ordered ones: $ wp post get --format=json --fields=title 1

Interruptores

También hay parámetros con nombre que solo se utilizan para indicar valores de tipo verdadero/falso. Estos se llaman interruptores y no necesitan un valor especificado. Si los agrega a la línea de comando, se entiende que significan "verdadero". Si los omite, son “falsos”.

Quizás esto se explique mejor con algunos ejemplos:

 # Passing "hello-dolly" as regular ordered parameter $ wp plugin activate hello-dolly # Passing a regular ordered parameter with spaces requires quotes $ wp plugin search "WP Offload Media" # Passing the value 'json' to the named parameter 'format' $ wp plugin list --format=json # Setting the 'quiet' switch to true $ wp plugin activate hello-dolly --quiet

No es tan complicado, ¿eh? Esta es prácticamente la norma entre las herramientas de línea de comandos. Pero agreguemos un pequeño detalle más.

Argumentos con nombre global

Los argumentos con nombre pueden ser globales en el sentido de que muchos comandos de WP-CLI los usan, y siempre tienen el mismo comportamiento cuando se usan.

Otros argumentos con nombre solo tienen sentido para un comando específico. Este tipo de argumento con nombre es esencialmente solo un parámetro con nombre. En los ejemplos anteriores, el parámetro --quiet es global porque afecta a todos los comandos de la misma manera. Pero el parámetro --format no se considera global porque no tiene sentido para todos los comandos.

Cómo usar los comandos WP-CLI

Como ejemplo, veamos cómo usar wp-plugin para instalar y activar un complemento de WordPress. Junto con la gestión de usuarios, esta es una de las primeras áreas sobre las que los nuevos usuarios de WP-CLI quieren aprender. Incluso si no está muy interesado en administrar complementos desde la línea de comandos, vale la pena leer esta sección para prepararse para trabajar con WP-CLI.

Instalar un nuevo complemento desde el repositorio de WordPress es muy sencillo. Necesita un comando principal ( wp plugin ), un subcomando ( install ) y un parámetro ordenado (el slug oficial del complemento) para instalar el complemento. La activación del complemento utiliza un comando similar, pero con un subcomando diferente ( activate ).

Junta todo y deberías ver algo como esto:

 # Installing a plugin $ wp plugin install hello-dolly Installing Hello Dolly (1.7.2) Downloading installation package from https://downloads.wordpress.org/plugin/hello-dolly.1.7.2.zip... The authenticity of hello-dolly.1.7.2.zip could not be verified as no signature was found. Unpacking the package... Installing the plugin... Plugin installed successfully. Success: Installed 1 of 1 plugins. $ wp plugin activate hello-dolly Plugin 'hello-dolly' activated. Success: Activated 1 of 1 plugins.

Como puede ver, instalar y activar un complemento son dos cosas separadas en WP-CLI, tal como lo es cuando instala un complemento usando la interfaz web. Pero instalar y luego activar directamente un complemento es tan común que WP-CLI tiene una manera de hacer ambas cosas al mismo tiempo:

 # Installing AND activating a plugin in one go $ wp plugin install --activate hello-dolly

Una parte complicada es encontrar el slug correcto para el complemento que desea. Todos los complementos se identifican por su slug oficial, pero en muchos casos el slug no es ni remotamente similar al nombre oficial del complemento. El popular complemento Yoast SEO tiene el slug wordpress-seo . El slug para nuestro propio complemento WP Offload Media es amazon-s3-and-cloudfront .

Los slugs se asignan cuando los complementos se aceptan por primera vez en el repositorio de complementos de WordPress y son los únicos identificadores únicos. Incluso si cambia el nombre del complemento, el slug sigue siendo el mismo. Siempre puede ir a la página web del repositorio de complementos, buscar el complemento y mirar la ruta en la URL:

Puede ver el slug de un complemento al ver su URL en el repositorio, pero WP-CLI ofrece una solución más elegante.

Funciona, pero le falta finura y te saca de tu terminal. Esta es la forma correcta de hacerlo usando el subcomando de search de WP-CLI:

 wp plugin search "wp offload media" --per-page=1 --fields=name,slug Success: Showing 1 of 66 plugins. +-----------------------------------------------------------------------+--------------------------+ | name | slug | +-----------------------------------------------------------------------+--------------------------+ | WP Offload Media Lite for Amazon S3, DigitalOcean Spaces, and Google | amazon-s3-and-cloudfront | | Cloud Storage | | +-----------------------------------------------------------------------+--------------------------+

Si está interesado en obtener más información sobre la administración de complementos, nos sumergiremos en todos los aspectos esenciales del comando del wp plugin en una publicación posterior sobre WP-CLI. Por ahora solo lo estamos usando como una forma de demostrar el uso de parámetros.

Terminando

El mayor beneficio que verá al integrar WP-CLI en su flujo de trabajo de desarrollo es probablemente cuánto más rápido le permite trabajar. Prácticamente todo lo que puede hacer desde el administrador de WordPress se puede lograr en menos tiempo usando la línea de comandos.

Una vez que conozca los conceptos básicos, puede llevar WP-CLI aún más lejos con nuestra lista de paquetes WP-CLI sin los que no podemos vivir.

Comprender cómo se estructuran los comandos, subcomandos y parámetros es clave para familiarizarse con WP-CLI. Mi intención es proporcionarte los conocimientos básicos que necesitas para empezar a experimentar por tu cuenta. Si tiene alguna pregunta sobre cómo estructurar sus comandos WP-CLI, parámetros o cualquier otra cosa relacionada con WP-CLI, hágamelo saber en los comentarios.