WP24Horas
PARCEIRO RECOMENDADO Vai colocar um WordPress no ar? Comece com uma hospedagem que acompanha o seu projeto. Conhecer a HostGator link patrocinado

Desenvolvimento e Programação

Criando Comandos WP-CLI Personalizados para Plugins WordPress

Por Asllan Maciel3 min de leitura
Como Criar Comandos WP-CLI Personalizados para Plugins
Esta entrada é parte 6 de 15 na série WordPress Extremo: Arquitetura e Engenharia de Plugins

WordPress Extremo: Arquitetura e Engenharia de Plugins

Como Criar um Plugin Profissional com Composer e PSR-4

Como Criar um Plugin WordPress com Composer e PSR-4 – WordPress Extremo Dia 1

Como Usar Serviços em Plugins para Código Limpo e Desacoplado - WordPress Extremo Dia 2

Como Usar Serviços em Plugins para Código Limpo e Desacoplado – WordPress Extremo Dia 2

Como Usar Repositórios em Plugins para Separar Lógica de Dados

Como Usar Repositórios em Plugins para Separar Lógica de Dados – WordPress Extremo Dia 3

Injeção de Dependência Manual em Plugins WordPress

Injeção de Dependência Manual em Plugins WordPress – WordPress Extremo Dia 4

Criando Hooks Personalizados com do_action e apply_filters

Hooks Avançados no WordPress: apply_filters, do_action e boas práticas

Como Criar Comandos WP-CLI Personalizados para Plugins

Criando Comandos WP-CLI Personalizados para 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 Tratar Erros e Exceptions em Plugins WordPress do Jeito Certo

Tratamento de Erros e Uso Inteligente de Exceptions em Plugins WordPress

Segurança Profunda em Plugins WordPress

Segurança Profunda em Plugins WordPress

Como Internacionalizar seu Plugin WordPress (i18n e l10n) do Jeito Certo

Internacionalização e Localização (i18n e l10n)

Criando Settings Pages Profissionais no WordPress

Criando Settings Pages Profissionais no WordPress

Como Criar Permissões Customizadas e Controle de Acesso em Plugins WordPress

Permissões Customizadas e Controle de Acesso em Plugins WordPress

Separação Clara de Camadas - Core, Domain e Infra

Separação Clara de Camadas: Core, Domain e Infra

Atualizações Automáticas de Plugin WordPress via GitHub

Atualizações Automáticas via GitHub.

Checklist Final de Publicação - WordPress.org e Produção

Checklist Final de Publicação: WordPress.org e Produção

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!

WordPress Extremo: Arquitetura e Engenharia de Plugins

Hooks Avançados no WordPress: apply_filters, do_action e boas práticas Como Gerenciar Logs e Erros Internos em Plugins WordPress (Do Jeito Certo)

Sobre o autor

Asllan Maciel

Asllan Maciel, Fundador do WP24Horas, Consultor de Marketing Digital e amante do Empreendedorismo Digital. Tem um caso de amor com o WordPress.