
🚫 Como colocar noindex nas páginas de paginação no Yoast SEO
Quando se tem centenas de artigos, dezenas de categorias e uma nuvem de etiquetas, as páginas de paginação multiplicam-se sem se dar por isso. /page/2/, depois /page/3/, depois /page/15/ e, quando se dá conta, o Google está a indexar milhares de URLs inúteis que não têm conteúdo único, mas consomem o orçamento de rastreio.
Em versões anteriores do Yoast SEO, existia um interruptor incorporado chamado «Noindex subpages of archives». Uma caixa de verificação e o problema ficava resolvido. Mas, em 2020, a equipa do Yoast removeu esta definição da interface. A posição oficial: o Google tornou-se mais inteligente a lidar com séries paginadas e a definição já não é necessária.
Na prática, é necessária. Especialmente para sites grandes, onde cada página extra no índice consome a quota de rastreio de URLs que deveriam realmente posicionar-se.
Os programadores do Yoast deixaram uma alternativa: o filtro wpseo_robots. Com ele, pode definir programaticamente noindex, follow para quaisquer páginas de paginação. Abaixo estão duas opções de código: uma rigorosa (todos os URLs /page/) e uma seletiva (apenas arquivos de categorias e etiquetas).
💡 Visão geral rápida:
- Saiba porque é que o Yoast removeu a opção incorporada e quando é que ainda é necessária
- Obtenha código pronto a usar para o
functions.php: duas versões do filtrowpseo_robots - Aprenda a verificar os resultados através do código-fonte da página e da Google Search Console
Porque é que as páginas de paginação devem ser bloqueadas da indexação
Cada página de paginação tem três problemas. Primeiro, duplicação de conteúdo: /category/seo/, /category/seo/page/2/ e /category/seo/page/3/ mostram as mesmas pré-visualizações, apenas divididas por páginas. Segundo, conteúdo pobre: uma página de paginação não tem um artigo completo, apenas uma lista de títulos com excertos. Terceiro, orçamento de rastreio: o Googlebot gasta o seu limite de rastreio em URLs que não têm valor de pesquisa, em vez de voltar a rastrear artigos novos.
Historicamente, o Yoast SEO resolvia esta tarefa com uma única caixa de verificação nas definições. Mas, a partir da versão 14.0, a empresa reconsiderou a sua abordagem. A lógica era esta: o Google aprendeu a reconhecer rel="prev" e rel="next", compreende a estrutura de paginação e direciona os utilizadores para a primeira página por si próprio. E o noindex nas subpáginas, na visão do Yoast, reduz o número de rastreios e impede o motor de busca de redescobrir artigos antigos através de links nestas páginas.
Este argumento é discutível. Se tem um blogue pequeno com 30 artigos, muito bem, o Google resolve. Mas se o seu site cresceu para vários milhares de URLs com paginação de categorias, etiquetas e arquivos por data, o motor de busca perde tempo com o que não interessa. Bloquear as subpáginas da indexação via código é uma solução controlada e reversível.
Opção 1: noindex para todas as páginas de paginação
A abordagem mais simples e radical. O filtro verifica a condição is_paged(), uma função padrão do WordPress que devolve true em qualquer página de paginação (arquivos, categorias, etiquetas, página inicial). Se a condição for verdadeira, substituímos por noindex, follow.
Adicione este código ao functions.php do seu tema ativo ou através do plugin Code Snippets:
1 add_filter('wpseo_robots', function($robots) { 2 if (is_paged()) { 3 return 'noindex,follow'; 4 } 5 return $robots; 6 });
O que acontece linha a linha:
add_filter('wpseo_robots', ...)liga-se ao filtro do Yoast SEO responsável pelo conteúdo da meta tagrobots. O filtro aceita o valor atual de$robotse espera uma string como retorno.is_paged()é uma função incorporada do núcleo do WordPress. É acionada em qualquer URL onde a variávelpagedesteja presente (ou seja,/page/N/).return 'noindex,follow'diz ao motor de busca: «não indexe esta página, mas siga os links nela contidos». Os links dentro da paginação continuam a passar peso.return $robotsdevolve o valor padrão do Yoast inalterado para todas as outras páginas.
Depois de adicionar o código, visite qualquer página como /category/seo/page/2/ e abra o código-fonte HTML (Ctrl+U). Encontre a linha <meta name="robots". Se vir content="noindex, follow", o filtro funcionou.
Opção 2: noindex apenas para arquivos de categorias e etiquetas
A primeira opção atinge todas as páginas paginadas indiscriminadamente, incluindo a página inicial (/page/2/). Se a sua página inicial mostra pré-visualizações de artigos e pretende manter as suas subpáginas no índice, precisa de uma lógica mais direcionada.
Adicionamos uma segunda condição: is_archive(). Esta função do WordPress devolve true apenas em páginas de arquivo: categorias, etiquetas, arquivos por data, arquivos de autor e taxonomias personalizadas.
1 add_filter('wpseo_robots', function($robots) { 2 if (is_paged() && is_archive()) { 3 return 'noindex,follow'; 4 } 5 return $robots; 6 });
A diferença em relação à primeira opção está na combinação de condições. is_paged() && is_archive() significa: «página de paginação E página de arquivo simultaneamente». A paginação da página inicial (/page/2/) não corresponde à condição is_archive(), pelo que a sua indexação é preservada.
Qual a opção a escolher:
Situação | Opção |
|---|---|
Site grande, milhares de URLs de paginação, necessidade de controlo máximo | Opção 1 |
A página inicial mostra um feed de artigos, as subpáginas da página inicial são importantes para a indexação | Opção 2 |
Loja de comércio eletrónico em WooCommerce com categorias de produtos | Opção 2 |
Necessidade de previsibilidade e o mínimo de exceções | Opção 1 |
Como verificar o resultado
Depois de inserir o código, verifique três coisas.
Primeiro, o código-fonte. Abra qualquer página de paginação, Ctrl+U, procure por <meta name="robots". Certifique-se de que vê content="noindex, follow" e não content="index, follow".
Segundo, a Google Search Console. Vá à ferramenta de inspeção de URL, cole o endereço da página paginada e clique em «Testar». No bloco «Indexação», verá o estado: «A página não é indexada» com o motivo «Excluída pela etiqueta noindex». Isto confirma que o Googlebot recebeu e processou a diretiva.
Terceiro, a dinâmica do índice. Na Search Console, abra «Índice» → «Páginas». Dentro de 2 a 4 semanas após a implementação do código, verá um crescimento de páginas com o estado «Excluída pela etiqueta noindex» e uma redução de URLs paginadas indexadas. O processo não é instantâneo: o Googlebot tem de voltar a rastrear cada URL para ler a nova etiqueta.
Limitações e precauções importantes
O código altera o comportamento de todo o site. Antes de implementar, certifique-se de que compreende as consequências.
Remover subitamente milhares de páginas do índice pode causar temporariamente uma quebra de tráfego. Se o site viveu com a indexação da paginação durante vários anos e algumas subpáginas recebiam tráfego de pesquisa, perderá essas visitas. Em contrapartida, libertará orçamento de rastreio para páginas que devem realmente posicionar-se. Mas é inevitável um período de adaptação de 3 a 6 semanas.
Faça uma cópia de segurança do functions.php antes de editar. Um erro de sintaxe no código PHP fará cair o site inteiro (ecrã branco da morte). Se usar o Code Snippets, o plugin detetará o erro fatal e desativará o snippet. Se editar o functions.php diretamente, mantenha o acesso FTP à mão para reverter o ficheiro.
Se o site tiver um plugin de cache instalado (WP Rocket, W3 Total Cache), limpe a cache depois de adicionar o código. Caso contrário, serão servidas cópias HTML antigas das páginas, sem a nova meta tag robots, aos visitantes e aos motores de busca durante várias horas ou dias.
Para uma análise mais detalhada de todas as capacidades do Yoast SEO, desde a instalação até ao ajuste fino das meta tags, consulte o nosso guia de configuração do Yoast SEO para WordPress.
⁉️🤔 Perguntas frequentes
Porque é que o Yoast SEO removeu a opção de noindex incorporada para subpáginas?
O Google aprendeu a reconhecer séries paginadas através das etiquetas
rel="prev"erel="next"e a direcionar os utilizadores para a primeira página. O Yoast decidiu que forçar o noindex nas subpáginas reduz os rastreios e interfere com a reindexação de artigos antigos através de links de páginas paginadas. A documentação oficial do Yoast confirma: a definição foi removida da interface, mas o filtrowpseo_robotspermanece para controlo programático.
O filtro wpseo_robots ainda é suportado em 2026?
Sim. O filtro
wpseo_robotsfunciona nas versões atuais do Yoast SEO (24.x, 2026) e está documentado na API de Metadados em developer.yoast.com. Uma alteração importante: antes da versão 19.8, o filtro permitia devolverfalsepara remover a meta tag robots. A partir da 19.8, devolverfalseé ignorado; o filtro espera apenas uma string ('noindex,follow'ou$robots). Ambas as versões de código deste artigo devolvem uma string e são totalmente compatíveis.
O código funcionará se o site tiver uma estrutura de paginação personalizada?
A função
is_paged()depende do parâmetro de consulta padrão do WordPresspaged. Se a paginação for implementada através de um parâmetro personalizado (por exemplo,?pg=2ou scroll virtual), a condição não será acionada. Para paginação personalizada, substituais_paged()por uma verificação da query_var específica:get_query_var('custom_page_var'). Plugins como o WP-PageNavi funcionam através dopagedpadrão, pelo que não há conflito.
Quanto tempo até o Google remover as páginas paginadas do índice?
Em média, 2 a 6 semanas. A velocidade depende do tamanho do site e da frequência de rastreio: num site com rastreios diários, o Googlebot voltará a rastrear as secções principais em 7 a 10 dias; num blogue pequeno com rastreios semanais, num mês. Pode acelerar isto através de um pedido de rastreio manual na Search Console («Índice» → «Páginas» → selecionar URL → «Solicitar indexação»), mas o Google processa esses pedidos por ordem de fila.
A paginação pode ser bloqueada via robots.txt em vez de noindex?
Tecnicamente sim:
Disallow: */page/*no robots.txt proibirá o rastreio de URLs paginadas. Mas isto é pior do que o noindex. O motivo: o robots.txt bloqueia o rastreio da página, não a sua indexação. Se links externos apontarem para uma página paginada, o Google pode indexá-la como uma «página sem descrição». Ao mesmo tempo, os links da própria página também não serão rastreados e perderá a transferência de peso para os artigos.noindex, followresolve ambas as tarefas: a página não é indexada, mas os links nela contidos são rastreados.
Deve bloquear a paginação da indexação no seu caso
A resposta resume-se a dois fatores: o tamanho do site e se o orçamento de rastreio é um recurso escasso.
Se tem 50 artigos e três categorias, não se preocupe. O Google perceberá quais as páginas a mostrar nos resultados de pesquisa e filtrará as menos valiosas por si próprio. O filtro wpseo_robots neste cenário é uma complexidade desnecessária.
Se tem mais de 500 artigos, dezenas de categorias, um blogue ativo com etiquetas e arquivos por data, a paginação cria centenas e milhares de URLs que o motor de busca rastreia em vez de artigos novos. Ative a opção 2 (arquivos) ou a opção 1 (tudo), verifique o resultado através do código-fonte e da Search Console e dê ao Google 3 a 4 semanas para voltar a rastrear.
O código é reversível: comente o filtro e, dentro de um mês, todas as páginas paginadas voltarão ao índice. Sem consequências irreversíveis.



