WP-CLI é a interface em linha de comando para o WordPress. Você pode atualizar plugins, configurar instalações multisite e muito mais, sem utilizar um navegador web.
A manutenção contínua é possível graças aos seguintes patrocinadores:
A versão estável mais recente é a 2.5.0. Para manter-se atualizado, siga @wpcli no Twitter ou assine nossa newsletter. Leia nosso plano de ação para uma visão geral do que está sendo planejado para próximas versões.
Links rápidos: Usando | Instalando | Suporte | Estendendo | Contribuindo | Créditos
Usando
O objetivo da WP-CLI é fornecer uma interface em linha de comando para muitas das ações que você pode executar na administração do WordPress. Por exemplo, wp plugin install --activate
(doc) permite a instalação e ativação de um plugin WordPress:
$ wp plugin install user-switching --activate
Installing User Switching (1.0.9)
Downloading installation package from https://downloads.wordpress.org/plugin/user-switching.1.0.9.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'user-switching'...
Plugin 'user-switching' activated.
Success: Installed 1 of 1 plugins.
A WP-CLI também inclui muitos comandos para ações que não são possíveis através da administração do WordPress. Por exemplo, wp transient delete --all
(doc) permite excluir um ou todos os transients:
$ wp transient delete --all
Success: 34 transients deleted from the database.
Para uma introdução mais completa sobre como usar a WP-CLI, leia o Guia rápido. Veja também os shell friends para saber mais sobre utilitários de linha de comando.
Já se sente confortável com o básico? Vá para a lista completa de comandos para informações detalhadas sobre gerenciamento de temas e plugins, importação e exportação de dados, operações de busca e substituição no banco de dados e muito mais.
Instalando
Baixar o arquivo Phar é o método de instalação que recomendamos para a maioria dos usuários. Caso precise, veja também a documentação sobre métodos alternativos de instalação (Composer, Homebrew, Docker).
Antes de instalar a WP-CLI, tenha certeza de que seu ambiente cumpre os requisitos mínimos:
- Ambiente UNIX-like (OS X, Linux, FreeBSD, Cygwin); suporte limitado para ambientes Windows
- PHP 5.6 ou superior
- WordPress 3.7 ou superior. Versões do WordPress anteriores à mais recente podem ter funcionalidade reduzida
Após verificar os requisitos, baixe o arquivo wp-cli.phar usando wget
ou curl
:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Em seguida, verifique se o arquivo phar está funcionando:
php wp-cli.phar --info
Para usar a WP-CLI na linha de comando usando apenas wp
, torne o arquivo executável e mova-o para algum diretório presente em sua variável de ambiente PATH. Por exemplo:
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
Se a WP-CLI foi instalada corretamente, ao executar wp --info
você deverá ver algo como:
$ wp --info
OS: Linux 4.19.128-microsoft-standard #1 SMP Tue Jun 23 12:58:10 UTC 2020 x86_64
Shell: /usr/bin/zsh
PHP binary: /usr/bin/php
PHP version: 8.0.5
php.ini used: /etc/php/8.0/cli/php.ini
MySQL binary: /usr/bin/mysql
MySQL version: mysql Ver 8.0.23-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))
SQL modes:
WP-CLI root dir: /home/wp-cli/
WP-CLI vendor dir: /home/wp-cli/vendor
WP_CLI phar path:
WP-CLI packages dir: /home/wp-cli/.wp-cli/packages/
WP-CLI global config:
WP-CLI project config: /home/wp-cli/wp-cli.yml
WP-CLI version: 2.5.0
Atualizando
WP-CLI pode ser atualizada com wp cli update
(doc) ou repetindo os passos da instalação.
Se o proprietário do arquivo da WP-CLI for root ou outro usuário do sistema, será necessário executar sudo wp cli update
.
Quer viver no limite? Execute wp cli update --nightly
para usar a última compilação de desenvolvimento da WP-CLI. Essa versão é estável o suficiente para ser usada em seu ambiente de desenvolvimento e sempre inclui as melhores e mais recentes funcionalidades da WP-CLI.
Autocompletar com tab
A WP-CLI também possui scripts de autocompletar para Bash ou ZSH. Baixe wp-completion.bash e carregue-o através do ~/.bash_profile
:
source /FULL/PATH/TO/wp-completion.bash
Não se esqueça de executar source ~/.bash_profile
em seguida.
Se estiver usando zsh como shell, pode ser necessário carregar e iniciar bashcompinit
antes de carregá-lo. Inclua o seguinte no seu .zshrc
:
autoload bashcompinit
bashcompinit
source /FULL/PATH/TO/wp-completion.bash
Suporte
Os responsáveis e os colaboradores da WP-CLI possuem disponibilidade limitada para atender a questões gerais de suporte. A versão atual da WP-CLI é a única com suporte oficial.
Ao procurar por suporte, pesquise primeiro por sua dúvida nas fontes abaixo:
- Questões comuns e suas respostas
- Manual da WP-CLI
- Questões abertas ou fechadas no GitHub da WP-CLI
- Tópicos com a tag ‘WP-CLI’ no fórum de suporte do WordPress.org
- Questões com a tag ‘WP-CLI’ no WordPress StackExchange
Se você não encontrou uma resposta em nenhum dos endereços acima, você pode:
- Entrar para o canal
#cli
no Slack Internacional do WordPress.org para conversar com quem estiver disponível no momento. Esta opção é a melhor para perguntas rápidas. - Criar um novo tópico no fórum internacional do WordPress.org e colocar a tag ‘WP-CLI’ para que ele seja encontrado pela comunidade.
Issues do GitHub são usadas para acompanhar melhorias e erros dos comandos existentes, não para suporte em geral. Antes de informar um erro, veja nossas boas práticas para que o problema possa ser resolvido em tempo hábil.
Não faça perguntas de suporte no Twitter. O Twitter não é um lugar aceitável para suporte porque: 1) é difícil conversar com apenas 280 caracteres e 2) o Twitter não é um lugar onde alguém com a mesma pergunta possa procurar por uma resposta de uma conversa anterior.
Lembre-se: libre != gratis; A licença do código aberto dá para você a liberdade de usar e modificar, mas não gera compromissos com o tempo dos outros. Seja respeitoso e regule suas expectativas.
Estendendo
Um comando é a unidade atômica de funcionalidade da WP-CLI. wp plugin install
(doc) é um comando. wp plugin activate
(doc) é outro.
A WP-CLI suporta o registro de qualquer classe ou função como um comando. Ela lê os detalhes de uso através do callback do PHPdoc. WP_CLI::add_command()
(doc) é usado para registo de comandos internos e de terceiros.
/**
* Delete an option from the database.
*
* Returns an error if the option didn't exist.
*
* ## OPTIONS
*
* <key>
* : Key for the option.
*
* ## EXAMPLES
*
* $ wp option delete my_option
* Success: Deleted 'my_option' option.
*/
$delete_option_cmd = function( $args ) {
list( $key ) = $args;
if ( ! delete_option( $key ) ) {
WP_CLI::error( "Could not delete '$key' option. Does it exist?" );
} else {
WP_CLI::success( "Deleted '$key' option." );
}
};
WP_CLI::add_command( 'option delete', $delete_option_cmd );
A WP-CLI vem com vários comandos. Criar um comando personalizado para WP-CLI é mais fácil do que parece. Leia o livro de receitas de comandos para saber mais. Navegue pela documentação de API interna para descobrir umaa variedade de funções úteis que você pode utilizar no seu comando personalizado para WP-CLI.
Contribuindo
Nós agradecemos sua iniciativa em contribuir com a WP-CLI. É por sua causa, e pela comunidade à sua volta, que a WP-CLI é um projeto tão legal.
Contribuir não é limitado somente a código. Nós encorajamos você a contribuir da maneira que melhor se encaixar em suas habilidades, escrevendo tutoriais, com demonstrações em meetups locais, ajudando outros usuários respondendo suas dúvidas no fórum ou revisando nossa documentação.
No manual, dê uma olhada nas nossas diretrizes para contribuir para uma introdução completa sobre como participar. Seguir esses passos ajuda a passar a ideia de que você respeita o tempo dos outros colaboradores. Por sua vez, eles farão o melhor para retribuir esse respeito ao trabalhar com você, nos diferentes fusos horários, em todo o mundo.
Liderança
A WP-CLI tem um responsável pelo projeto: schlessera.
Quando necessário, damos permissão de escrita para colaboradores que demonstraram sua capacidade durante algum tempo e que se esforçaram para levar o projeto adiante.
Leia o documento sobre governança no manual para mais detalhes operacionais do projeto.
Créditos
Além das bibliotecas especificadas em composer.json, usamos código ou ideias dos projetos abaixos:
- Drush para… muitas coisas
- wpshell para
wp shell
- Regenerate Thumbnails para
wp media regenerate
- Search-Replace-DB para
wp search-replace
- WordPress-CLI-Exporter para
wp export
- WordPress-CLI-Importer para
wp import
- wordpress-plugin-tests para
wp scaffold plugin-tests