0
44

SHARE

Como Criar Comandos WP-CLI Personalizados para Plugins

Criando Comandos WP-CLI Personalizados para Plugins WordPress

Aprenda como criar comandos WP-CLI personalizados para seu plugin WordPress, executando lógica direto no terminal. Agilize seu fluxo como um dev profissional.
Este post é a parte 6 de 18 da Série WordPress Extremo

E aí, dev! Aqui é o Asllan, e hoje no Dia 6 da série WordPress Extremo, a gente vai sair do browser e ir direto pro terminal – Mas calma!

Se você já viu alguém digitando wp plugin activate ou wp option get siteurl no terminal e pensou:

“Quero fazer isso com o MEU plugin também!”
Hoje é seu dia!

Vamos criar comandos WP-CLI personalizados. Sim, aquele tipo de coisa que você digita no terminal e ele executa lógica do seu plugin.


⚙️ O que é WP-CLI?

O WP-CLI (Command Line Interface para WordPress) é, portanto, uma interface de linha de comando para WordPress.
Com ele, você consegue:

✅ Instalar/atualizar plugins e temas
✅ Criar usuários
✅ Executar consultas, alterar opções, limpar cache
✅ …e criar seus próprios comandos personalizados


🧰 Requisitos antes de começar

Antes de criar seu primeiro comando WP-CLI personalizado, garanta que tudo abaixo esteja funcionando:

✅ WP-CLI instalado

Você precisa ter o WP-CLI instalado e funcionando no terminal.

  • Se estiver usando wp-cli.phar, teste com:
php wp-cli.phar --info

Se funcionar, ótimo.

🔧 Dica: Se quiser usar wp diretamente no terminal (sem digitar php wp-cli.phar), crie um arquivo wp.bat com:

@ECHO OFF
php "CAMINHO\wp-cli.phar" %*

Depois adicione a pasta onde está o wp.bat às variáveis de ambiente do Windows (PATH). Reinicie o terminal e teste:

wp --info

📍 Atenção antes de testar seu comando:

  • Seu WordPress precisa estar rodando (o banco de dados precisa estar disponível).
  • Se estiver local, o MySQL/XAMPP precisa estar ativo.
  • Você deve rodar os comandos a partir da raiz do WordPress, onde está o wp-config.php.
  • O plugin precisa estar ativo, senão o WP não registra o comando.

Rode:

wp plugin activate wp-arquitetura-extrema

E depois:

wp plugin list

Verifique se ele aparece como Status: active.


🎯 Nosso objetivo

Vamos criar um comando assim:

wp wp24h hello

E ele vai executar a lógica do nosso plugin diretamente via terminal — sem interface gráfica.


🧩 Estrutura de pastas no plugin

wp-arquitetura-extrema/
├── composer.json
├── vendor/
├── wp-arquitetura-extrema.php
└── src/
    ├── Hooks/
    │   └── Init.php
    ├── Services/
    │   └── HelloService.php
    ├── Repositories/
    └── Commands/
        └── HelloCommand.php

📄 src/Commands/HelloCommand.php

<?php
namespace WpArquiteturaExtrema\Commands;

use WP_CLI;
use WpArquiteturaExtrema\Repositories\UserRepository;
use WpArquiteturaExtrema\Services\HelloService;

class HelloCommand {
    /**
     * Executa o comando: wp wp24h hello
     *
     * ## EXEMPLO
     *     wp wp24h hello
     */
    public function __invoke($args, $assoc_args) {
        WP_CLI::log('Iniciando execução via WP-CLI...');

        $repo = new UserRepository();
        $service = new HelloService($repo);
        $service->execute();

        WP_CLI::success('Comando executado com sucesso!');
    }
}

🧷 Ajuste no arquivo principal do plugin

No wp-arquitetura-extrema.php, adicione no final:

// Comando WP-CLI personalizado
if (defined('WP_CLI') && WP_CLI) {
    WP_CLI::add_command(
        'wp24h hello',
        new \WpArquiteturaExtrema\Commands\HelloCommand()
    );
}

⚠️ Importante: o comando só estará disponível após essa linha ser incluída e o plugin ativado.


🔄 Atualize o autoload

Depois de criar o arquivo HelloCommand.php, atualize o autoload do Composer:

composer dump-autoload

✅ Testando

Agora vá até a raiz do seu projeto WordPress e rode:

wp wp24h hello

Se tudo estiver certo, você verá:

Iniciando execução via WP-CLI...
Comando executado com sucesso!

💡 Dica bônus

Você pode criar comandos para:

  • Importar dados
  • Corrigir registros quebrados
  • Integrações com APIs externas
  • Gerar relatórios
  • Automatizar tarefas de manutenção

🧠 Conclusão do Dia 6

Hoje você aprendeu a:

✅ Criar comandos WP-CLI
✅ Integrar seu plugin com o terminal
✅ Trabalhar com eficiência e profissionalismo


🔜 No próximo…

Vamos mergulhar no mundo do Gutenberg com React, criando blocos personalizados com campos dinâmicos e estilos.


💬 Curtiu esse conteúdo?

Quer dominar WordPress de verdade?
👉 Confira nossos cursos e mentorias em wp24horas.com.br
📲 Me segue no Instagram: @wp24horas
📌 Ou comenta aqui se quiser ajuda com WP-CLI, Composer, ou o que for!

Navegação<< Hooks Avançados no WordPress: apply_filters, do_action e boas práticasCriando Blocos Personalizados com Gutenberg e React >>

Não perca mais nenhuma atualização aqui!

Ative as Notificações!

Clique aqui e, em seguida, clique em Permitir na caixa que aparecerá na parte superior da janela, próximo à barra de endereços.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! Ao se tornar um assinante do WP24Horas, você terá acesso a:

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!

Não perca mais nenhuma atualização aqui!

Tabela de Conteúdo
PUBLICIDADE
Últimos Posts
Segurança Profunda em Plugins WordPress

Segurança Profunda em Plugins WordPress

Como Tratar Erros e Exceptions em Plugins WordPress do Jeito Certo

Tratamento de Erros e Uso Inteligente de Exceptions em Plugins WordPress

Como Implementar um Sistema de Logs Profissional em Plugins WordPress

Como Gerenciar Logs e Erros Internos em Plugins WordPress (Do Jeito Certo)

Como Criar um Bloco WordPress com Filtro por Múltiplas Categorias

Bloco de Posts com Filtro por Múltiplas Categorias

Como Filtrar Posts por Categoria em um Bloco Gutenberg

Filtrando Posts por Categoria no Editor do Bloco

Como Criar um Bloco Dinâmico no WordPress com Renderização PHP

Bloco Dinâmico com Renderização no Servidor

Você precisa estar logado para ver esta informação.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! 

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!