Discourse weist jeder erstellten Kategorie eine ID zu, sodass Sie diese verwenden können, um Ihr Ziel zu erreichen.
Sie müssen etwas benutzerdefinierten Code zu einer Theme-Komponente hinzufügen und diese in Ihrem aktiven Theme (bzw. Ihren aktiven Themes) aktivieren.
Hier ist der kommentierte Code für das, was Sie erreichen möchten.
<script type="text/discourse-plugin" version="0.8">
// Optionen, die Sie ändern können
const targetCategoryId = 6; // Ändern Sie dies auf die Zielkategorie
const placeHolderForCategory = "CHANGE_THIS_TEXT_BUT_KEEP_THE_QUOTES";
// Ab dieser Zeile muss nichts mehr geändert werden. Wenn Sie Administrator sind, hören Sie hier auf.
const discourseComputed = require("discourse-common/utils/decorators")
.default;
// Kein Remote-Komponente
const currentLocale = I18n.currentLocale();
I18n.translations[
currentLocale
].js.composer.custom_category_placeholder = placeHolderForCategory;
// Ändert den Platzhalter für die Zielkategorie, andernfalls wird auf
// die Standardwerte zurückgegriffen.
api.modifyClass("model:composer", {
@discourseComputed("canEditTopicFeaturedLink")
titlePlaceholder() {
return this.category && this.category.id === targetCategoryId
? "composer.custom_category_placeholder"
: this._super();
},
});
</script>
Dies wird im Reiter „common > header" Ihrer Komponente eingefügt.
Die Kategorie-ID können Sie ermitteln, indem Sie die Seite der jeweiligen Kategorie aufrufen und die URL prüfen.
Zum Beispiel:
Die ID der Kategorie Support hier auf Meta ist 6 (die letzte Ziffer in der URL hier)
Im obigen Code-Snippet sollte die ID (Zahl) Ihrer Zielkategorie die „6" in targetCategoryId ersetzen.
Die andere Option ist sehr einfach: Ändern Sie den Text in das, was als Platzhalter für den Titel dieser Kategorie angezeigt werden soll.