Desenvolvedores e SysAdmin constantemente fazem uso de terminais para execução de linhas de comando.
Para esses profissionais que trabalham com o WordPress, é possível seguir no terminal e executar variadas funções no WP através do WP-CLI.
E para quem não tem ideia do que estamos falando, me permita te introduzir ao assunto.
É a interface de linha de comando para a execução de tarefas no WordPress. São dezenas de comandos disponíveis para facilitar os processos de instalação, atualização e gestão de projetos que usam a plataforma.
Praticamente todas as ações que realizamos no CMS é possível de serem feitas através do terminal. Por exemplo: atualizar o WordPress, plugins e temas; realizar operações no banco de dados; importar e exportar conteúdos; gerenciar usuários, funções, taxonomias, posts, menu, mídia e widgets, por exemplo; executar ações no arquivo wp-config.php.
De tarefas simples as mais custosas em questão de processamento, fazer o uso do WP-CLI é muito mais eficiente, rápido e simples.
Para quem está acostumado com a execução de comandos Shell, se deparar com o WP-CLI e suas possibilidades chega a brilhar os olhos.
Essa ferramenta nos permite economizar recursos do servidor, evitar o protocolo HTTP na execução de tarefas longas e custosas, além de nos permitir automatizar scripts para as rotinas de manutenção.
Para que serve uma interface de linha de comando
Uma interface de linha comando pode ser útil em várias ocasiões, e para variados tipos de profissionais.
As ações que você realiza numa interface gráfica, como gerir arquivos, também são possíveis de serem feitas no terminal.
Os tipos de ações são as mais variadas: copiar arquivos, excluí-los, mover, mudar permissão. Baixar arquivos de uma fonte externa também é possível.
Se tratando do WordPress, a situação é semelhante. Isto é, as ações executadas na administração do CMS, também são possíveis de serem feitas através de linha de comando.
Algumas ações, como excluir transient no banco de dados não é possível fazer através do wp-admin. Já com o WP-CLI é possível.
Vou trazer alguns exemplos simples e outros mais sofisticados para ilustrar casos reais de uso do WP-CLI.
Economia de recursos e execução custosa no servidor
Quando falamos de sites com grande audiência, ou projetos com considerável número de arquivos, é muito difícil, e em alguns casos impossíveis, realizar tarefas de gestão na administração do WP usando o protocolo HTTP.
As atividades desse tipo vão concorrer com outras atividades dos usuários e editores.
Dependendo da operação, o processamento do servidor pode subir e comprometer a disponibilidade do site.
Por isso que não é recomendado o uso de alguns plugins que fazem tudo via HTTP, se faz necessário ir para a linha de comando e executar scripts em Shell.
Dois exemplos clássicos são gerar os thumbnails novamente, fazer backups muito grandes.
Atividades como essa consomem bastante, e realizá-las através do WP-CLI economizará recursos no servidor e não trará impactos para a disponibilidade do site.
Atualizações e status de versão
Se você está logado na administração do WordPress, é fácil visualizar a versão da plataforma. Bem como dos plugins e temas em uso.
Agora, considere o profissional que gere o servidor, o qual não tem acesso ao wp-admin. Ele precisa consultar essas informações para realizar as atualizações necessárias.
Através de comandos do WP-CLI é possível consultar a versão do WP em uso, baixar uma nova e atualizá-lo.
É possível também listar todos os plugins instalados. E nessa listagem é possível ver o seu status e versão.
Realizar essas operações no terminal, facilita também a inclusão dos novos arquivos no repositório de versionamento.
Automatizar tarefas
Quando você precisa realizar a mesma operação seguidas vezes, seja ao longo de um tempo ou em vários sites, faz todo sentido automatizar o processo.
Por exemplo, as rotinas de atualizações, geração de backups de arquivos e banco de dados, entre outras ações.
Combinado uma programação em linguagem Shell com os comandos disponíveis na WP-CLI chegamos ao objetivo de automatizar as tarefas.
Como instalar o WP-CLI
Algumas hospedagem especializadas em WordPress como o WP Host, possuem o WP-CLI instalado.
Você também pode instalar em sua máquina local, ambiente de homologação e em produção, caso a hospedagem não forneça esse recurso.
Os requisitos exigidos são básicos, a saber:
- Sistema operacional baseado em UNIX (OS X, Linux, FreeBSD). O suporte no Windows é limitado;
- PHP 5.4 ou superior;
- WordPress 3.7 ou superior.
Em seguida siga os quatro passos para instalar.
- Baixar o wp-cli.phar;
- Validar o funcionamento do arquivo;
- Tornar o arquivo executável;
- Mover para o seu PATH.
Como estamos falando de interface de linha de comando, considere o uso do wget ou curl para o download.
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Valide o arquivo baixo através do seguinte comando:
php wp-cli.phar --info
Para tornar o arquivo executável:
chmod +x wp-cli.phar
Mova o arquivo para o seu PATH
sudo mv wp-cli.phar /usr/local/bin/wp
Todo comando do WP-CLI é precedido do “wp”. Se certifique que a instalação foi realizada com sucesso executando o seguinte comando:
wp --info
Como usar o CLI no WP
Como dito, todo comando WP-CLI é precedido do “wp”. Logo em seguida digitamos o comando, sub comando e suas variáveis.
Vamos considerar como exemplo, a listagem de todos os plugins instalados. O comando seria:
wp plugin list
O resultado seria uma listagem como representado na imagem abaixo.
Na listagem é informado o nome, status (se está ativo, ou não), update (se tem atualização disponível) e a versão em uso.
Como observamos uma atualização disponível, vamos considerar os seguintes comandos para atualizá-lo.
wp plugin update custom-css-js
Podemos atualizar todos plugins de uma vez com um único comando. Assim:
wp plugin update --all
As possibilidades são diversas. Considere consultar a lista de todos os comandos WP-CLI disponíveis e divirta-se.
Conclusão
A ferramenta de CLI do WordPress é muito poderosa.
A gestão operacional das atividades para sustentar projetos em WordPress e WooCommerce são mais facilitadas e eficientes.
E quando falamos de sites com grandes audiências, o seu uso se torna ainda mais estratégico.
Além de ser menos custoso em questões de processamento, gera economia e mais estabilidade para os usuários e equipe de redação.
E você, já utiliza o WP-CLI em seus projetos WP?