Sou um completo novato em relação ao Discourse, mas também em fóruns em geral, e gostaria de perguntar e entender se e como é possível que o URL de um tópico contenha sua categoria.
Estou utilizando um software de terceiros que raspa um fórum. Sou limitado pelas suas consultas e, portanto, quando ele raspa um tópico (tópico), ele precisa inferir a qual categoria pertence, o que parece fazer através da URL.
Se você for quem fornece explicitamente as URLs para o scraper e define como ele extrairá a categoria delas, talvez você possa usar o que Tobias sugeriu como um hack – você poderia fornecer a ele /t/nome-da-categoria__slug-do-tópico/id-do-tópico, por exemplo. O Discourse responderá com um redirecionamento 301 para a URL final, com base unicamente no id-do-tópico.
Se ele obtiver as URLs durante o processo de scraping, no entanto, parece muito trabalho para uma alteração destinada apenas a suprir uma limitação na estratégia de scraping.
Pelo que sei, não. Servir uma rota /t/nome-da-categoria/slug-do-tópico/id-do-tópico em um plugin parece viável, mas ter uma opção para que todas as referências a tópicos no Discourse prefiram essa rota alternativa parece (para mim, pessoalmente) muito trabalho para pouco ganho.