Ich würde auch eine eingebaute Option begrüßen, mit der eine Dok-Kategorie standardmäßig mit einem Index-Thema geöffnet wird. Bis dahin verwende ich folgenden JavaScript-Workaround:
import { apiInitializer } from "discourse/lib/api";
export default apiInitializer((api) => {
// Dok-Kategorien: Kategorie-Liste zum Index-Thema weiterleiten
api.onPageChange(() => {
const currentPath = window.location.pathname;
const queryParams = window.location.search;
const redirects = {
"/c/category-1-slug/category-1-id": "/t/topic-1-slug/index-topic-1-id",
"/c/category-2-slug/category-2-id": "/t/topic-2-slug/index-topic-2-id"
};
if (queryParams.includes("list=true")) return;
const match = Object.keys(redirects).find(cat => currentPath.startsWith(cat));
if (match) {
const targetTopic = redirects[match];
if (currentPath !== targetTopic) {
const router = api.container.lookup("router:main");
router.transitionTo(targetTopic);
}
}
});
});
Um die Dok-Kategorie mit der regulären Liste zu öffnen, fügen Sie einen Parameter zur URL hinzu:
/c/category-1-slug/category-1-id?list=true