Descoberta automática de feed RSS pode não encontrar feeds específicos de tópicos

Olá Arya,

Sim — este é de fato um resultado de como o Discourse lida atualmente com feeds RSS específicos de tópicos, não um bug no seu leitor de feed. A causa raiz é que o Discourse adiciona rel="nofollow" ao elemento <link> para feeds RSS de tópicos/categorias. Muitos leitores de feed ignoram links com nofollow, o que impede a descoberta automática, embora o feed em si seja válido e funcione se acessado diretamente.

Uma solução prática é usar um Componente de Tema para adicionar links RSS específicos de tópicos sem nofollow. Aqui está um exemplo simples:

<!-- Adiciona links RSS específicos de tópicos sem nofollow -->
<script type="text/discourse-plugin" version="0.8">
  api.onPageChange((url, title) => {
    document.querySelectorAll('link.custom-rss').forEach(e => e.remove());
    document.querySelectorAll('link[title^="RSS feed of"]').forEach(link => {
      const newLink = document.createElement('link');
      newLink.rel = "alternate";
      newLink.type = "application/rss+xml";
      newLink.href = link.href;
      newLink.title = link.title;
      newLink.classList.add('custom-rss');
      document.head.appendChild(newLink);
    });
  });
</script>

Isso verifica todos os links RSS de tópicos/categorias e injeta novos elementos <link> sem nofollow no <head>.

Os leitores de feed agora devem detectar feeds específicos de tópicos automaticamente.

Alternativamente, para uma abordagem mais simples, você pode simplesmente compartilhar o URL do feed diretamente com os usuários, por exemplo, Cascade - NLnet Labs Community.

Este método evita modificar o núcleo do Discourse e funciona em todas as atualizações. Espero que isso ajude a autodescoberta de feeds a funcionar como esperado!

Saudações!

1 curtida