FernandoAcosta.Netdocs

Resolução de problemas e debug

3 min de leituraAtualizado há 5 dias

Se algo não está funcionando — e-mail não chega, código não aparece, status não muda — comece pelos logs. O plugin escreve no logger do próprio WooCommerce, com a fonte any-shipping-debug.

Habilitar e ler os logs

  1. Vá em WooCommerce → Status → Logs.
  2. Na parte de cima, escolha Logs em arquivo (ou File dependendo da versão).
  3. Procure os arquivos cuja fonte começa com any-shipping-debug.

Os arquivos ficam em wp-content/uploads/wc-logs/ (ou wp-content/logs/, dependendo da versão do WooCommerce e do servidor).

O que o plugin loga

Eventos relevantes:

  • Quando um código novo é adicionado (Adicionado rastreio <código> ao pedido <id>).
  • Quando o e-mail vai ser disparado (E-mail com rastreio <código> do pedido <id>).
  • Quando entra no método de envio do e-mail (MÉTODO E-mail com rastreio <código>).
  • Conteúdo final do e-mail antes do envio (vai disparar o e-mail de <código> para <e-mail>... <mensagem>).

Se o pedido foi adicionado com sucesso mas nenhum log de e-mail aparece, o problema está antes do envio (provavelmente o e-mail está desabilitado em Configurações → E-mails).

Casos comuns

"Cliente não recebeu o e-mail"

  1. Confirme que o e-mail está habilitado. Vá em WooCommerce → Configurações → E-mails → Código de rastreamento para transportadoras e veja se Habilitar este e-mail de notificação está marcado.
  2. Confirme que o e-mail do cliente é válido. O plugin usa o e-mail de cobrança do pedido (get_billing_email()).
  3. Confirme que o servidor manda e-mail. Outros e-mails do WooCommerce (ex: confirmação de pedido, fatura) chegam? Se nenhum chega, o problema é entrega (SMTP, SPF, DKIM) — não é deste plugin. Use um plugin como WP Mail SMTP ou similar.
  4. Veja os logs do plugin. Se o log mostra "vai disparar o e-mail de..." mas o cliente não recebeu, o e-mail saiu daqui — caiu no spam ou foi bloqueado.

"Código não aparece pro cliente"

  • Confirme que o código foi salvo (deve aparecer no metabox Código de rastreio quando você reabre o pedido).
  • Confirme que o cliente está logado e olhando os detalhes do pedido (e não a lista). O bloco Acompanhe sua entrega aparece só na página de detalhes.

"Status do pedido não mudou"

Veja status do pedido. Lembre-se:

  • Se Status após inserir rastreio está em Não atualizar status, é o esperado.
  • Se o pedido já estava no status configurado, o plugin não tenta transicionar — só adiciona uma nota.

A URL configurada em cadastrar transportadoras está errada — placeholder fora do lugar, domínio mudou, ou a transportadora descontinuou aquela rota. Teste a URL substituindo {tracking_code} por um código real diretamente no navegador.

"Tela do pedido não carrega depois de instalar"

Acontece quando o ambiente é WC 7.1+ com HPOS habilitado mas em algum estado intermediário (ex: tabela customizada de pedidos não foi criada). Vá em WooCommerce → Configurações → Avançado → Recursos, alterne High-performance order storage e siga as instruções da própria tela. Depois reabra o pedido.

Adicionar logs próprios

Se você está customizando o plugin com um filtro ou action e quer adicionar entradas no mesmo log, use a função helper:

any_shipping_debug( 'Sua mensagem aqui' );

// com backtrace, útil pra entender de onde a chamada veio:
any_shipping_debug( 'Erro inesperado', true );

Ela está documentada em funções helper.

Estrutura de dados (pra quando precisar olhar direto no banco)

Os códigos são armazenados como meta do pedido:

  • Meta key: _wc_any_shipping_notify_tracking_code
  • Valor: array onde a chave é o código de rastreio e o valor é o slug da transportadora.

Exemplo:

[
  'BR123456789BR' => 'sedex',
  'JL987654321BR' => 'jadlog',
]

Em ambientes HPOS, esse meta fica na tabela wp_wc_orders_meta. Em ambientes clássicos, em wp_postmeta. O helper wc_any_shipping_get_tracking_codes() (veja funções helper) lê dos dois sem você precisar saber qual está em uso.

E as configurações globais ficam em duas opções:

  • wc_any_shipping_notify_available_companies — array com name e url de cada transportadora.
  • wc_any_shipping_notify_new_status — slug do status do pedido (ou none).
Foi útil?