Nosso guia para a estrutura de comando WP-CLI
Publicados: 2022-06-29
A interface de linha de comando do WordPress (WP-CLI) é uma ferramenta incrível para melhorar seu fluxo de trabalho de desenvolvimento. Compreender como os comandos são estruturados é a chave para usar o WP-CLI em todo o seu potencial. Neste artigo, você aprenderá como estruturar comandos WP-CLI, incluindo como usar comandos pai e subcomandos, bem como parâmetros e opções.
Antes de mergulhar na criação de comandos, você precisará instalar o WP-CLI. O método exato difere de acordo com o sistema operacional, mas nosso guia para instalar e configurar o WP-CLI tem tudo o que você precisa.
Comandos e subcomandos pai
Quase todos os comandos WP-CLI são estruturados da mesma maneira. Existe um comando pai para cada área maior de funcionalidade, como wp core
para trabalhar com a instalação principal do WordPress. Cada um desses comandos pai pode ser usado com vários subcomandos diferentes e deve ser usado com pelo menos um.
Comandos dos Pais Lançam as Bases
Nenhum comando pai fará qualquer coisa útil por conta própria. Por exemplo, se você tentar usar o wp config
sozinho, verá algo assim:
~$ configuração wp uso: wp config create --dbname=--dbuser= [--dbpass= ] [--dbhost= ] [--dbprefix= ] [--dbcharset= ] [--dbcollate= ] [--locale= ] [--extra-php] [--skip-salts] [--skip-check] [--force] [--config-file= ] [--inseguro] ou: wp config delete [--tipo= ] [--arquivo-config= ] ou: wp config edit [--config-file= ] ou: wp config get [--tipo= ] [--formato= ] [--arquivo-config= ] ou: wp config tem [--tipo= ] [--arquivo-config= ] ou: wp config list [ ...] [--campos= ] [--formato= ] [--strict] [--config-file= ] ou: caminho de configuração wp ou: conjunto de configuração wp [--add] [--raw] [--anchor= ] [--canal= ] [--separador= ] [--type= ] [--arquivo-config= ] ou: wp config shuffle-salts [ ...] [--force] [--config-file= ] [--inseguro] Veja 'wp help config' para mais informações sobre um comando específico.
Isso por si só fornece algumas boas pistas de como você usaria o comando wp config
. Você pode obter uma compreensão ainda melhor seguindo seus conselhos e digitando wp help config
.
NOME configuração wp DESCRIÇÃO Gera e lê o arquivo wp-config.php. SINOPSE configuração wpSUBCOMANDOS create Gera um arquivo wp-config.php. delete Exclui uma constante ou variável específica do arquivo wp-config.php. edit Inicia o editor do sistema para editar o arquivo wp-config.php. get Obtém o valor de uma constante ou variável específica definida no arquivo wp-config.php. has Verifica se existe uma constante ou variável específica no arquivo wp-config.php. list Lista variáveis, constantes e inclusões de arquivos definidas no arquivo wp-config.php. path Obtém o caminho para o arquivo wp-config.php. set Configura o valor de uma constante ou variável específica definida no arquivo wp-config.php. shuffle-salts Atualiza os sais definidos no arquivo wp-config.php. PARÂMETROS GLOBAIS --caminho=
Existem mais de 40 comandos pai no total na instalação principal do WP-CLI. Alguns plugins populares, como WooCommerce e BuddyPress, adicionam seus próprios comandos pai, então sua instalação do WordPress pode ter ainda mais. Na maioria dos casos, você pode descobrir como usar o comando digitando wp help
seguido do nome do comando pai.
Entender um pouco sobre como eles são agrupados ajuda na hora de aprender a usar o WP-CLI. Vale a pena notar que os comandos WP-CLI quase sempre usam substantivos singulares nos comandos. Por exemplo, o comando pai para gerenciamento de usuários é denominado wp user
em vez de “wp users”. Contanto que você se lembre disso, descobrirá que sua intuição geralmente está correta. O comando para gerenciar comentários é, de fato, wp comment
e wp cron
é o comando que você usaria para gerenciar agendamentos e eventos do WP-Cron.
Você pode encontrar uma folha de dicas com alguns dos comandos pai mais usados abaixo.
Comando | Descrição |
---|---|
núcleo wp | Trabalhando com instalações do WordPress. |
configuração wp | Gerando e lendo wp-config.php. |
plugin wp | Gerenciamento de plug-ins. |
tema wp | Gerenciando temas. |
usuário wp | Gerenciando usuários. |
mídia wp | Trabalhando com imagens e outros arquivos de mídia |
wp ajuda | Ajuda Geral. Siga-o com um comando para obter informações mais específicas. |
opção wp | Configuração de opções do site, incluindo opções de plugin e WordPress. |
site wp | Gerenciando sites em uma instalação multisite. |
Subcomandos dão direção
Como mencionei anteriormente, nenhum desses comandos realmente funciona por conta própria. Também precisamos especificar um subcomando se quisermos chegar a algum lugar. Eu recomendo configurar a conclusão da guia. Isso permitirá que você veja facilmente os subcomandos. Por exemplo, usando o preenchimento de guias, podemos ver os subcomandos para plugin
:
$ wp plugin [TAB] activate get list toggle auto-updates install path uninstall deactivate is-active search update delete is-installed status verify-checksums
Pressionar enter sem especificar o subcomando solicitará ao WP-CLI que apresente alguma ajuda 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] ....
Notou uma diferença na forma como os parâmetros são apresentados no texto de ajuda acima? Alguns são encapsulados em marcas < >
, outros são prefixados com traços duplos --
. Isso não é uma coincidência; são tipos diferentes de parâmetros. Voltaremos a isso daqui a pouco.
O WP-CLI é bom de se trabalhar, pois muitas vezes será capaz de dizer um pouco mais sobre cada subcomando e os parâmetros que ele espera. Isso é muito consistente em todos os comandos WP-CLI integrados. Sempre que você não digitar um comando completo com todos os parâmetros esperados, ele informará mais sobre o que estava esperando.
Folha de dicas de comandos populares do WP-CLI
A folha de dicas abaixo mostra alguns dos subcomandos mais comuns e os comandos pai que eles acompanham. Existem muitos, muitos mais subcomandos disponíveis do que os listados aqui. Alguns comandos pai, como wp comment
, têm mais de uma dúzia de subcomandos, enquanto outros, como wp cron
, têm apenas alguns.
Núcleo WP
COMANDO | DESCRIÇÃO |
---|---|
download do núcleo wp | Baixa os arquivos principais do WordPress. |
wp core instalar | Instala o WordPress. |
atualização do núcleo wp | Atualiza o WordPress para uma versão mais recente. |
Configuração WP
COMANDO | DESCRIÇÃO |
---|---|
wp configuração criar | Cria um novo arquivo `wp-config.php`. |
edição de configuração do wp | Inicia o editor do sistema para editar o arquivo de configuração. |
atualização do núcleo wp | Mostra as variáveis, constantes e inclusões de arquivos definidas no arquivo `wp-config.php`. |
Tema WP
COMANDO | DESCRIÇÃO |
---|---|
instalação do tema wp | Instala o tema. |
wp tema ativar | Ativa o tema. |
atualizações automáticas do tema wp | Gerencia atualizações automáticas. |
wp tema desativar | Desativa o tema selecionado. |
Plugin WP
COMANDO | DESCRIÇÃO |
---|---|
instalação do plugin wp | Instala o tema. |
wp plugin ativar | Ativa o plug-in. |
atualizações automáticas do plugin wp | Gerencia atualizações automáticas. |
wp plugin desativar | Desativa o plug-in selecionado. |
Parâmetros e interruptores
Além de um comando pai e um subcomando, a maioria dos comandos precisa de pelo menos um parâmetro para poder fazer algo útil. Por exemplo, se você deseja instalar um plugin, você precisa especificar qual plugin instalar. Naturalmente, o mesmo vale para ativar ou excluir um plugin.

Existem basicamente três tipos de parâmetros que você usará com o WP-CLI: parâmetros ordenados, parâmetros nomeados e opções.
Parâmetros ordenados
Se um comando precisar de mais de um parâmetro regular, eles sempre devem ser ordenados corretamente para que o comando funcione. É por isso que eles são chamados de parâmetros ordenados . Eles são sempre separados por um único espaço. Se o próprio valor do parâmetro contiver espaços, ele precisa ser colocado entre aspas.
No texto de ajuda de um comando, os parâmetros ordenados são cercados por <
e >
. No exemplo a seguir de tentar usar wp post get
sem nenhum parâmetro, vemos que id
é um parâmetro ordenado porque está entre <
e >
.
$ wp post get usage: wp post get <id> [--field=<field>] [--fields=<fields>] [--format=<format>]
Parâmetros nomeados
O WP-CLI também funciona muito com parâmetros nomeados . Estes podem ser dados em qualquer ordem. Um parâmetro nomeado é reconhecido pelos traços duplos antes do nome e pela presença de um sinal de igual entre o nome e o valor.
Por exemplo, olhando para o texto de ajuda para wp post get
acima, vemos que os parâmetros de format
e fields
são prefixados com os traços duplos. É assim que sabemos que eles são parâmetros nomeados para este comando.
A ordem realmente não 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
Comuta
Também há parâmetros nomeados que são usados apenas para indicar valores de tipo verdadeiro/falso. Eles são chamados de switches e não precisam de um valor especificado. Se você adicioná-los à linha de comando, eles significam “verdadeiros”. Se você os omitir, eles são “falsos”.
Talvez isso seja melhor explicado com alguns exemplos:
# 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
Não é tão complicado, hein? Esta é praticamente a norma entre as ferramentas de linha de comando. Mas vamos acrescentar mais um pequeno detalhe.
Argumentos nomeados globais
Os argumentos nomeados podem ser globais no sentido de que muitos comandos WP-CLI os usam e sempre têm o mesmo comportamento quando usados.
Outros argumentos nomeados só fazem sentido para um comando específico. Esse tipo de argumento nomeado é essencialmente apenas um parâmetro nomeado. Nos exemplos acima, o parâmetro --quiet
é global porque afeta todos os comandos da mesma maneira. Mas o parâmetro --format
não é considerado global porque não faz sentido para todos os comandos.
Como usar comandos WP-CLI
Como exemplo, vamos ver como usar wp-plugin
para instalar e ativar um plugin do WordPress. Junto com o gerenciamento de usuários, esta é uma das primeiras áreas sobre as quais os novos usuários do WP-CLI desejam aprender. Mesmo se você não estiver muito interessado em gerenciar plugins a partir da linha de comando, vale a pena ler esta seção para se preparar para trabalhar com WP-CLI.
Instalar um novo plugin do repositório do WordPress é muito simples. Você precisa de um comando pai ( wp plugin
), um subcomando ( install
) e um parâmetro ordenado (o slug oficial do plugin) para instalar o plugin. A ativação do plugin usa um comando semelhante, mas com um subcomando diferente ( activate
).
Junte tudo e você deverá ver algo assim:
# 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 você pode ver, instalar e ativar um plugin são duas coisas separadas no WP-CLI, assim como quando você instala um plugin usando a interface web. Mas instalar e ativar diretamente um plugin é tão comum que o WP-CLI tem uma maneira de fazer as duas coisas ao mesmo tempo:
# Installing AND activating a plugin in one go $ wp plugin install --activate hello-dolly
Uma parte complicada é encontrar o slug certo para o plugin que você deseja. Todos os plugins são identificados por seu slug oficial, mas em muitos casos o slug não é nem remotamente parecido com o nome oficial do plugin. O popular plugin Yoast SEO tem o slug wordpress-seo
. O slug para nosso próprio plugin WP Offload Media é amazon-s3-and-cloudfront
.
Slugs são atribuídos quando os plugins são aceitos pela primeira vez no repositório de plugins do WordPress e são os únicos identificadores exclusivos. Mesmo que o nome do plugin mude, o slug permanece o mesmo. Você sempre pode acessar a página do repositório do plug-in, procurar o plug-in e ver o caminho na URL:
Funciona, mas falta sutileza e tira você do seu terminal. Aqui está a maneira correta de fazer isso usando o subcomando de search
do 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 | | +-----------------------------------------------------------------------+--------------------------+
Se você estiver interessado em aprender mais sobre como gerenciar plugins, vamos mergulhar em todos os aspectos básicos do comando wp plugin
em um post posterior sobre WP-CLI. Por enquanto estamos usando apenas como uma forma de demonstrar o uso de parâmetros.
Empacotando
O maior benefício que você verá ao integrar o WP-CLI ao seu fluxo de trabalho de desenvolvimento provavelmente será a rapidez com que ele permite que você trabalhe. Praticamente tudo o que você pode fazer no administrador do WordPress pode ser feito em menos tempo usando a linha de comando.
Depois de conhecer o básico, você pode levar o WP-CLI ainda mais longe com nossa lista de pacotes WP-CLI sem os quais não podemos viver.
Compreender como os comandos, subcomandos e parâmetros são estruturados é fundamental para se familiarizar com o WP-CLI. Minha intenção é fornecer a você o conhecimento básico necessário para começar a experimentar por conta própria. Se você tiver alguma dúvida sobre como estruturar seus comandos WP-CLI, parâmetros ou qualquer outra coisa relacionada ao WP-CLI, deixe-me saber nos comentários.