Sono molto un n00b per quanto riguarda Discourse ma anche per i forum in generale e vorrei chiedere e capire se e come è possibile che l’URL di un thread contenga la sua categoria.
Sto utilizzando un software di terze parti che esegue lo scraping di un forum. Sono limitato dalle sue query e quindi, quando esegue lo scraping di un thread (argomento), deve dedurre a quale categoria appartiene, cosa che sembra fare tramite l’URL.
Dal punto di vista di un’app non ha senso, come ho già sottolineato, ma potresti essere in grado di creare un plugin o uno script per modificare tutti gli URL.
La categoria è chiara nell’HTML delle viste del crawler, credo, quindi forse potresti invece modificare lo strumento per sfruttarla?
Se sei tu a fornire esplicitamente gli URL allo scraper e a definire come estrarrà la categoria da essi, potresti essere in grado di utilizzare quello che Tobias ha suggerito come hack: potresti fornirgli ad esempio /t/category-name__topic-slug/topic-id. Discourse servirà una risposta di reindirizzamento 301 all’URL finale, basata esclusivamente sull’topic-id.
Se invece ottiene gli URL durante il processo di scraping, sembra un sacco di lavoro per una modifica volta solo a soddisfare una limitazione nella strategia di scraping.
Non che io sappia. Servire un percorso /t/category-name/topic-slug/topic_id in un plugin sembra fattibile, ma avere poi un’opzione in modo che tutti i riferimenti agli argomenti in Discourse preferiscano questo percorso alternativo sembra (a me, personalmente) troppo lavoro per un guadagno minimo.