WP-CLI é a interface de linha de comando oficial do WordPress: em vez de clicar no painel (o wp-admin), você digita comandos no terminal para atualizar plugins, fazer backup do banco de dados, criar posts, limpar o cache e muito mais. É gratuito, de código aberto e mantido pela comunidade WordPress. Em hospedagem, ele roda no servidor, e você chega até ele por SSH.
Os guias que existem sobre o assunto listam comandos. Neste aqui eu mostro os comandos que realmente usamos para administrar o TechDescomplicado, no nosso fluxo de publicar artigos todos os dias, com os números do nosso site e as armadilhas que a gente encontrou no caminho.
O que é o WP-CLI e quando vale a pena usar
Pense no wp-admin como o painel de um carro e no WP-CLI como o computador de bordo: faz o mesmo trabalho, mas dá para repetir, automatizar e rodar de longe. Ele vale a pena em três situações: tarefas repetitivas (atualizar vinte plugins, publicar vários posts), tarefas pesadas que travariam o navegador (exportar um banco grande, trocar o endereço do site em todas as tabelas) e quando o painel simplesmente não abre.
Não é obrigatório. Quem tem um site pequeno e faz tudo pelo painel passa bem sem ele. Mas, se você publica com frequência, ele economiza tempo e evita clique errado, porque o comando que você escreveu uma vez roda sempre igual.
Como ligar o WP-CLI na sua hospedagem
Você precisa de dois requisitos: acesso SSH à hospedagem e uma instalação do WordPress no servidor. Na Hostinger, o SSH vem desligado e é ativado no hPanel, em Avançado › Acesso SSH. O tutorial da Hostinger informa que os planos Premium para cima já vêm com o WP-CLI instalado; no plano Business que usamos, ele funciona sem instalação. Em outras hospedagens, confira com o suporte ou na documentação do plano.
Depois, é conectar e verificar:
ssh -p <porta> <usuario>@<servidor>
cd domains/seu-site.com.br/public_html
wp --infoO wp --info mostra a versão do WP-CLI, do PHP e o caminho do WordPress. Aqui, em 10 de outubro de 2026, ele reportou o WP-CLI 2.12.0 rodando com PHP 8.3. Se aparecer isso, você está pronto.

Comandos do WP-CLI que usamos no dia a dia
Esta é a lista que realmente aparece no nosso fluxo, na ordem em que costuma ser usada. Todos rodam dentro da pasta do WordPress:
| Comando | O que faz | Como usamos |
|---|---|---|
wp --info | Mostra a versão do WP-CLI, do PHP e o caminho do WordPress | Conferir o ambiente antes de começar |
wp db export arquivo.sql | Faz um backup do banco de dados | Antes de qualquer mudança grande. O nosso banco tem 50 MB (wp db size --human-readable) |
wp post list --post_status=private,draft,future | Lista posts por situação | Ver a fila de rascunhos e agendamentos |
wp term list category --fields=term_id,name,parent,count | Lista as categorias, com a quantidade de artigos | Descobrir quais menus ainda estão vazios |
wp post create arquivo.html --post_status=private | Cria um post a partir de um arquivo, já como privado | Todo rascunho nasce assim |
wp post meta update ID rank_math_focus_keyword "..." | Grava um campo personalizado do post | Palavra-chave, título e descrição do Rank Math |
wp media import foto.jpg --post_id=ID --featured_image | Envia uma imagem para a biblioteca e a liga ao post | Capa e imagens internas, com texto alternativo |
wp post update ID --post_status=publish | Muda a situação do post | Publicar, só depois da aprovação |
wp litespeed-purge all | Limpa o cache do plugin LiteSpeed | Depois de publicar, para o visitante ver a versão nova |
wp plugin list --update=available | Mostra os plugins com atualização pendente | Hoje ele mostra 5 atualizações de correção |
wp core verify-checksums | Confere se os arquivos do WordPress foram alterados | Verificação de integridade |
wp cron event list | Lista as tarefas agendadas do WordPress | O nosso site tem 51 |
Os outros comandos que mais aparecem nos guias, e que vale conhecer, são wp plugin update --all (atualiza todos os plugins), wp theme list, wp user create e, principalmente, o wp search-replace. Esse último troca um texto em todo o banco, por exemplo ao mudar o endereço do site, e sempre deve ser rodado antes com --dry-run, que só mostra o que seria trocado:
wp search-replace 'http://antigo.com.br' 'https://novo.com.br' --dry-runComo publicamos um artigo pelo WP-CLI
O nosso fluxo cabe em poucas linhas. O texto do artigo é um arquivo HTML no meu computador; um script envia o arquivo ao servidor e cria o post como privado, para eu revisar antes de qualquer um ver. O coração dele é este trecho:
ID=$(wp post create ~/artigo.html --post_type=post --post_status=private \
--post_author=2 --post_name=meu-slug --post_category=11,14 \
--post_title="Título do artigo" --post_excerpt="Resumo" --porcelain)
wp post meta update $ID rank_math_focus_keyword "palavra-chave"
wp media import capa.jpg --post_id=$ID --featured_image --alt="Descrição da capa"O --porcelain faz o comando devolver só o número do post, o que permite guardá-lo numa variável e usar nos comandos seguintes. A publicação é um wp post update $ID --post_status=publish, seguido do wp litespeed-purge all. Nada vai ao ar sem a aprovação da revisão.
Armadilhas que encontramos
- O servidor pode estar em outro fuso. O WordPress aqui está configurado em America/Sao_Paulo, mas o terminal do servidor da Hostinger roda em UTC. Ao montar uma data com o comando
datedo servidor e passar em--post_date, um post saiu agendado para três horas à frente. A saída: usarTZ=America/Sao_Paulo dateou nem informar a data; - Acentos e aspas quebram comandos enviados por SSH. O texto passa por dois shells (o seu e o do servidor), e uma aspa no lugar errado muda tudo. No nosso script, título, resumo e palavras-chave viajam codificados em base64 e são decodificados só no servidor;
- O
verify-checksumspode dar “falso alarme”. No nosso site ele diz que a instalação não confere com as somas oficiais, e o único arquivo apontado é oreadme.html, que não existe. Um arquivo de texto ausente não é invasão, mas por isso vale ler a saída inteira, e não só a mensagem de erro; - Comandos em lote pedem backup antes.
wp plugin update --allatualiza tudo de uma vez. Faça owp db exporte, depois, abra as páginas principais para ver se algo quebrou.
WP-CLI no Windows
O WP-CLI é pensado para ambientes Unix, e o próprio tutorial da Hostinger diz que o suporte ao Windows é limitado. Na prática, você não precisa instalá-lo no Windows: ele roda no servidor, e o Windows só precisa de um cliente SSH. O Windows 10 e o 11 trazem o OpenSSH, então basta abrir o PowerShell e usar o comando ssh. É assim que a gente trabalha aqui.
Minha opinião
Painel é para olhar, terminal é para repetir. Eu não recomendaria o WP-CLI para quem está começando com o WordPress, porque um comando errado, sem aquele botão de “tem certeza?” do painel, vai direto ao banco. Mas, depois que o site tem rotina, ele muda a conversa: o que antes era uma sequência de cliques que a gente podia errar vira um roteiro que a gente pode revisar, guardar e rodar de novo igual. Se você publica toda semana, vale aprender uns cinco comandos e o hábito de rodar o --dry-run antes de qualquer coisa em lote.
Se quiser ver o que roda por baixo, leia também os 18 plugins que usamos e o que aprendemos hospedando este site.
Perguntas frequentes sobre o WP-CLI
O que é o WP-CLI?
É a interface de linha de comando oficial do WordPress. Permite administrar o site pelo terminal: atualizar plugins e temas, fazer backup do banco, criar posts e usuários, trocar textos em massa e limpar cache, sem usar o painel.
Como instalar o WP-CLI?
Em muitas hospedagens ele já vem instalado, e basta ativar o acesso SSH. Na Hostinger, o SSH se ativa no hPanel, em Avançado › Acesso SSH, e o tutorial da empresa informa que os planos Premium para cima já têm o WP-CLI. Confirme com o comando wp –info.
O WP-CLI funciona em hospedagem compartilhada?
Depende da hospedagem. Ele exige acesso SSH. Na Hostinger Business, que é o plano que usamos, funciona.
O WP-CLI funciona no Windows?
O suporte nativo é limitado. A saída prática é rodá-lo no servidor, conectando por SSH a partir do PowerShell do Windows.
Como atualizar todos os plugins pelo WP-CLI?
Com o comando wp plugin update –all. Antes, faça um backup do banco com wp db export, e depois da atualização confira as páginas principais do site.
Como trocar o endereço do site pelo WP-CLI?
Com o comando wp search-replace, informando o endereço antigo e o novo. Rode primeiro com a opção –dry-run, que só mostra o que seria trocado, e faça um backup antes.
O WP-CLI substitui os plugins de backup?
Não. O wp db export faz uma cópia do banco, mas um plugin de backup completo também guarda arquivos, temas e uploads, e agenda cópias automáticas. Os dois se complementam.
Você usa o WP-CLI ou prefere o painel do WordPress? Conta aqui nos comentários.
Resumo
- O WP-CLI é a linha de comando oficial do WordPress: administra o site pelo terminal, via SSH.
- Na Hostinger, o SSH é ativado no hPanel; no plano Business que usamos o WP-CLI já funciona (versão 2.12.0, PHP 8.3).
- Comandos do nosso dia a dia: db export, post list/create/update, post meta update, media import, litespeed-purge, plugin list e verify-checksums.
- Armadilhas: servidor em UTC (cuidado com –post_date), acentos e aspas por SSH e o falso alarme do verify-checksums.
- Use sempre –dry-run em search-replace e faça backup antes de comandos em lote.
Fontes
- WordPress Developer Resources: lista de comandos do WP-CLI
- Hostinger: O que é WP-CLI, como instalar e como usá-lo (atualizado em 18/09/2026)
- Kinsta: WP-CLI v2, gerenciando o WordPress a partir do terminal
- Apiki: WP-CLI, o que é, como instalar e comandos essenciais
- InspectWP: O que é o WP-CLI (05/08/2026)


