Não há URLs ?page=… em sitemaps padrão por design?
Todos esses URLs ?page=… são URLs canônicos e, portanto, devem ser adicionados ao sitemap padrão - por exemplo,
Posso implementar uma correção fácil que não é muito específica sobre a data da última edição: por exemplo, todas as páginas de um tópico usarão a mesma data da postagem editada mais recentemente.
Dessa forma, em uma nova postagem em um tópico (com muitas postagens e muitas páginas), todas as páginas receberão uma nova data de última alteração - mesmo quando apenas a última página precisar da nova data.
Esta é uma solução viável?
Caso contrário, precisamos agrupar todas as postagens de um tópico em pacotes de 20 postagens (por página). E então calcular a data da última alteração para cada pacote.
Sinceramente, eu analisei isso e estou em dúvida sobre quaisquer mudanças aqui, o problema não é que o Google esteja tendo dificuldade em descobrir conteúdo em fóruns Discourse.
É que ele está descobrindo, rastreando e, em seguida, devido a “tomada de decisão arbitrária”, decide que o conteúdo não pertence ao índice.
No lado positivo de adicionar todos esses URLs canônicos ?page=… ao sitemap:
Isso dá ao Google uma forte dica sobre \u003clastmod\u003e para esses URLs. Assim, o Google não tem motivo para rastrear novamente URLs ?page=… inalterados e pode usar seu precioso orçamento de rastreamento para URLs mais importantes.
Se os URLs ?page=… estiverem faltando no sitemap, o Google os encontrará de qualquer maneira e fará algum rastreamento “arbitrário” - mesmo que seja totalmente desnecessário, pois não há novas alterações no conteúdo.
“Um sitemap é uma maneira importante para o Google descobrir URLs em seu site.” ver
“O Google escolhe a página canônica com base em vários fatores (ou sinais), como […], presença do URL em um sitemap, […].” ver
“Usar um sitemap não garante que todos os itens em seu sitemap serão rastreados e indexados, pois os processos do Google dependem de algoritmos complexos para agendar o rastreamento.” ver
Isso é certamente algo para o @Roman ter em mente ao integrar isso ao núcleo.
Prefiro muito mais mesclar o sitemap antes de adicionar mais alterações, mas, uma vez feito isso… talvez possamos começar com URLs baseadas em páginas canônicas em _recent. Temos URL canônica agora que pode ser usada em posts.rss com cache adequado, também pode ser usada em sitemaps.
Estou com problemas no Google Search Console ao tentar indexar URLs como https://example.com/t/title-slug/1234?page=3, que fazem o Discourse retornar um 404. Remover o parâmetro ?page=x torna a URL válida.
Presumo que isso seja algum tipo de efeito colateral do Discourse adicionando paginação à versão do site que ele serve aos rastreadores:
Olá Sam, obrigado pela resposta. Depois de postar isso, encontrei sua explicação aqui:
Mas no meu caso, não, os tópicos com este problema que analisei não mostram nenhuma modificação na thread original. A única coisa é que eles foram importados do Drupal. Mas preciso investigar mais outros exemplos para ver se tópicos que foram originalmente criados no Discourse também são afetados, porque infelizmente existem toneladas deles, como provavelmente milhares.
Sim, perto de 100 mil tópicos e ~2 milhões de posts. Não tenho certeza se este problema é apenas com tópicos importados, postarei novamente em breve se encontrar mais anomalias.