Como corrigir o erro de Schema Markup no Astra Pro no WordPress
O que é erro de Schema Markup no Astra Pro?
O erro de Schema Markup no Astra Pro não e um bug do tema isolado, e sim um conflito de duplicidade. O tema Astra adiciona schema markup próprio em vários componentes da página por padrão: Organization, Person, WPHeader, WPFooter, WPSidebar, SiteNavigationElement, BreadcrumbList e CreativeWork. Esse comportamento e controlado pela classe Astra_Schema, que ativa o markup por padrão através do filtro astra_schema_enabled, definido como true.
O problema aparece quando um plugin de SEO como Rank Math ou Yoast também injeta structured data na mesma página. O Google passa a receber duas declaracoes concorrentes do mesmo tipo de schema (por exemplo, dois BreadcrumbList ou dois Organization), e o Rich Results Test acusa propriedade duplicada ou markup invalido. A correção e deixar apenas uma fonte de schema ativa, normalmente desativando o markup do Astra e mantendo o do plugin de SEO, que e mais completo.
Como identificar
- O Rich Results Test do Google aponta ‘Duplicate field’ ou itens BreadcrumbList e Organization repetidos na mesma URL.
- O Search Console exibe avisos de dados estruturados em ‘Itens com problemas’ após instalar ou atualizar um plugin de SEO sobre o Astra Pro.
- Aparecem dois breadcrumbs renderizados na página, um do tema Astra e outro do plugin de SEO.
- O Schema Markup Validator (schema.org) lista mais de um bloco do mesmo @type onde deveria existir apenas um.
- O rich snippet de breadcrumb ou de organizacao deixa de aparecer no Google mesmo com o plugin de SEO configurado corretamente.
Como prevenir
- Defina uma única fonte de schema desde o inicio do projeto: ou o tema Astra, ou o plugin de SEO, nunca os dois emitindo o mesmo @type.
- Ao instalar um plugin de SEO sobre o Astra, já desative o schema do tema com o filtro astra_schema_enabled no tema filho.
- Após qualquer atualização do Astra ou do plugin de SEO, revalide as páginas principais no Rich Results Test para detectar duplicidade nova cedo.
- Mantenha o filtro astra_rank_math_theme_support alinhado a partir do Astra 3.6.4 para que o tema e o Rank Math não briguem pelo controle do breadcrumb.
Causa
- O tema Astra mantem o filtro astra_schema_enabled em true (padrão), entao a classe Astra_Schema emite Organization, Person, WPHeader, WPFooter, WPSidebar, SiteNavigationElement, BreadcrumbList e CreativeWork mesmo com um plugin de SEO ativo.
- Um plugin de SEO como Rank Math ou Yoast injeta seu próprio BreadcrumbList e Organization na mesma página, somando-se ao schema do Astra e gerando dois blocos do mesmo @type.
- A fonte do breadcrumb no Customizer (General > Breadcrumb > Breadcrumb Source) esta no padrão do Astra em vez de apontar para o Rank Math, fazendo os dois renderizarem markup de breadcrumb ao mesmo tempo.
- O suporte de tema ao Rank Math não foi ajustado pelo filtro astra_rank_math_theme_support, deixando recursos do plugin desalinhados com o schema do tema a partir do Astra 3.6.4.
- Schema adicional inserido manualmente em widget ou bloco de código customizado repete um @type que o Astra ou o plugin de SEO já emitem.
Como resolver
- Confirme a duplicidade no Rich Results Test: Antes de mexer no código, valide a URL afetada no Rich Results Test do Google e no Schema Markup Validator do schema.org. Identifique exatamente quais tipos estão duplicados (geralmente BreadcrumbList e Organization) e qual fonte os emite, o tema ou o plugin de SEO.
Abra https://search.google.com/test/rich-results Cole a URL afetada e rode o teste Anote os @type repetidos e a origem de cada um - Decida qual fonte de schema manter: Mantenha apenas uma fonte ativa por página. O recomendado e preservar o schema do plugin de SEO (Rank Math ou Yoast), que oferece controle mais granular, e desativar o markup do tema Astra. Isso elimina a duplicidade sem perder os rich snippets.
Regra: uma única fonte de schema por @type na página Recomendado: manter o plugin de SEO, desativar o schema do Astra - Desative o schema do Astra pelo filtro astra_schema_enabled: Adicione o filtro astra_schema_enabled retornando false no functions.php do tema filho. Esse e o switch oficial da classe Astra_Schema e desliga de uma vez todo o markup que o tema emite, deixando apenas o do plugin de SEO ativo. Use o tema filho para não perder a alteração em atualizações.
Acesse o site via FTP ou Gerenciador de Arquivos Abra wp-content/themes/seu-tema-filho/functions.php Adicione o filtro astra_schema_enabled retornando false (ver bloco de código) - Ajuste a fonte do breadcrumb no Customizer: Se o breadcrumb continuar duplicado, defina a fonte como o plugin de SEO. No Customizer do Astra, em General > Breadcrumb > Breadcrumb Source, selecione Rank Math (ou desative o breadcrumb do tema se usar Yoast) para que apenas um markup de BreadcrumbList seja renderizado.
Painel WP -> Aparencia -> Personalizar -> General -> Breadcrumb Em Breadcrumb Source, selecione Rank Math Publique as alterações do Customizer - Limpe cache e revalide: Limpe qualquer cache de página e CDN para que o HTML novo, sem o schema do tema, seja servido. Em seguida, rode o Rich Results Test de novo na mesma URL e confirme que cada @type aparece apenas uma vez. So entao solicite reindexacao no Search Console.
Limpe o cache do plugin de cache e da CDN Revalide a URL no https://search.google.com/test/rich-results Confirme um único bloco por @type antes de pedir reindexacao
<?php
// No functions.php do TEMA FILHO do Astra.
// Desativa todo o schema markup emitido pelo tema Astra,
// deixando o plugin de SEO (Rank Math/Yoast) como fonte unica.
add_filter( 'astra_schema_enabled', '__return_false' );
// Opcional: alinhar o suporte do tema ao Rank Math (Astra 3.6.4+),
// evitando conflito no controle do breadcrumb.
add_filter( 'astra_rank_math_theme_support', '__return_true' );














