Ferramentas nativas de depuração do WordPress que não exigem um IDE
Se você acabou de se tornar membro do site e está buscando conteúdo especificamente para The Independent WordPress Developer, recomendo ler o post anterior – no mínimo – para se preparar para o conteúdo deste post.
Se, no entanto, você quiser acompanhar o artigo anterior, aqui está uma pequena lista de tudo o que foi escrito até agora:
- Desenvolvimento Local para o Desenvolvedor Indie WordPress
- Bancos de dados e ferramentas para o desenvolvedor indie WordPress
- Instalando o WordPress para Desenvolvimento Local
À medida que nos preparamos para falar sobre tópicos mais avançados, como depuração e IDEs, primeiro vale a pena notar as ferramentas que temos disponíveis que podemos instalar no WordPress que nos ajudarão com problemas de depuração durante o desenvolvimento.
Além disso, esses problemas não estão relacionados estritamente a problemas de PHP. Isso também inclui problemas de JavaScript. E para dar um passo adiante, existem maneiras de configurar o WordPress nativamente para que ele gere erros diretamente em nosso navegador.
Portanto, antes de analisarmos os logs de erros, IDEs, Xdebug e assim por diante, veremos o que podemos fazer no próprio WordPress.
Ferramentas nativas de depuração do WordPress
As ferramentas nativas de depuração do WordPress são uma combinação de duas coisas:
- as opções que podemos definir no arquivo de configuração do WordPress que nos permitem ver as informações gravadas na tela,
- vários plugins que nos ajudarão a trabalhar com arquivos PHP e JavaScript dentro da área de administração do WordPress
Para o segundo ponto acima, quero deixar claro que existem muitos plugins disponíveis para algo assim; no entanto, quero manter a instalação o mais enxuta possível para que não sejamos inundados com muitas informações.
Em vez disso, quero que tenhamos as informações necessárias para testar e avaliar nosso trabalho, mas que tenhamos apenas o que precisamos. Pelo menos por enquanto. Talvez falemos sobre tópicos avançados em posts futuros.
Dito isso, vamos começar.
Configuração do WordPress
Antes de se preocupar com a configuração, o próprio WordPress fornece algumas opções diferentes que podemos configurar no wp-config.phparquivo. Eles estão bem documentados no Codex, mas sei por experiência de e-mails de outras pessoas que as informações podem ser um pouco difíceis de filtrar.
Primeiro, é importante observar o seguinte (conforme citado no WordPress Codex):
WP_DEBUG é uma constante PHP (uma variável global permanente) que pode ser usada para acionar o modo “debug" em todo o WordPress. Supõe-se que seja falso por padrão e geralmente é definido como verdadeiro no arquivo wp-config.php nas cópias de desenvolvimento do WordPress.
Isso pressupõe que você entenda as constantes do PHP. Se não, confira o manual aqui (é bem simples). O curta é o seguinte:
Uma constante é um identificador (nome) para um valor simples.
Então, vou fazer o que puder para fornecer as opções de configuração o máximo possível.
Primeiro, no wp-config.phparquivo, você desejará alterar a linha que diz:
<?php
define( 'WP_DEBUG', false );
<?php
define( 'WP_DEBUG', true );
Isso não é tudo, no entanto. Há mais algumas coisas a serem adicionadas que melhorarão a experiência de depuração:
<?php
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', true );
@ini_set( 'display_errors', 1 );
define( 'SCRIPT_DEBUG', true );
define( 'SAVEQUERIES', true );
Se você está acompanhando o Mas o que cada linha significa? Aqui está a explicação mais sucinta que posso dar agora:
- WP_DEBUG. Isso exibirá todos os erros e avisos lançados pelo PHP ao executar o WordPress. A execução do aplicativo por si só não deve apresentar problemas; no entanto, executá-lo ao lado de vários plugins pode ser uma história diferente dependendo da qualidade do plugin.
- WP_DEBUG_LOG. Essa é uma das minhas constantes favoritas e grava toda a saída no log de maneira detalhada. Vou abordar isso em um próximo post, mas, por enquanto, saiba que isso é algo que acho que deve sempre ser definido em seu ambiente de desenvolvimento.
- WP_DEBUG_DISPLAY. Este é um que você pode definir como verdadeiro ou falso (embora eu prefira verdadeiro). Ele complementa a configuração anterior, permitindo que você veja as mensagens no navegador que também são gravadas no blog. Não sei se isso é algo que você achará benéfico ou não. Se você não estiver preparado para passar por rastreamentos de pilha e informações mais detalhadas, considere definir este como verdadeiro.
- display_errors. O Codex menciona que você pode definir isso como false, mas acho que deve ser definido como true como forma de habilitar os erros e avisos.
- SCRIPT_DEBUG. O núcleo do WordPress usa versões minificadas de arquivos CSS e JavaScript. Desativar essa configuração permitirá que você visualize todo o conteúdo dos arquivos no formato original. Isso é particularmente útil se você estiver contribuindo para o Core ou trabalhando com o JavaScript incluído no Core.
- SAVEQUERIES. Esta é uma configuração um pouco mais avançada, na minha opinião. Resumindo, ele pegará todas as consultas executadas no banco de dados e as salvará em um array PHP que você poderá analisar posteriormente. Isto
Agora que abordamos a configuração do WordPress, e os plugins?
Plugins para depuração
Quando digo que o repositório está cheio de plugins para isso, estou falando sério. Na verdade, se você é novo no desenvolvimento do WordPress, eu não recomendo procurar coisas para instalar.
Pode rapidamente se tornar esmagador, você corre o risco de não entender o que alguns deles fazem e potencialmente levá-lo a um caminho no qual você acaba atrapalhando sua instalação.
Em vez de fazer isso, recomendo dar uma olhada nos seguintes plugins (lendo sua descrição primeiro, é claro) e depois partir daí:
- Barra de depuração. Este plugin sozinho adiciona um menu à barra de administração que permitirá que você veja a consulta, o cache e outras informações. Ele requer que WP_DEBUG e SAVEQUERIES conforme descrito acima estejam habilitados.
- Dependências de script e estilo da lista de barras de depuração. Este é um complemento para o plug-in acima que permitirá depurar outros estilos JavaScript e CSS que estão sendo executados no contexto do WordPress.
- Console da barra de depuração. Este plugin é aquele que você deve usar com hesitação. No mínimo, ele permite que você execute PHP e MySQL de dentro do próprio WordPress. Eu não recomendo este plugin a menos que você esteja muito confortável com qualquer um dos dois idiomas. Ainda assim, se você estiver, isso é algo que pode ser poderoso para prototipar uma função ou uma consulta antes de construí-la em seu plugin.
Examinando registros de erros
Na próxima postagem, começaremos a analisar o que é necessário para examinar o log de erros gerado pelo WordPress e como entender as informações que vemos.
Além disso, veremos o que é necessário para usar os plugins descritos neste post. Depois disso, passaremos para ferramentas ainda mais avançadas.
Mas um passo de cada vez, certo?
Por enquanto, configure sua instalação conforme descrito acima, instale os plugins vinculados e faça o que puder para explorar como eles funcionam, o que você pode ver na tela e como isso pode impactar e beneficiar positivamente seu desenvolvimento.
Sim, pode haver um pouco de curva de aprendizado. Mas é por isso que estamos indo devagar. Há muito a aprender, e temos muito tempo para cobrir todo o terreno necessário.

