Wir müssen bestimmten Beiträgen (etwa 100 und es werden mehr) einen Haftungsausschluss oder eine Offenlegung hinzufügen. Die Offenlegung kann sich in Zukunft ändern, daher möchte ich [DISCLOSURE-GOES-HERE] zu jedem der 100 Beiträge hinzufügen. Wir können sie manuell hinzufügen, das ist kein Problem. Aber wenn wir unsere Offenlegung in Zukunft aktualisieren, möchte ich sie nur an einer Stelle ändern.
Was ich versucht habe:
Gemischte Wörter (Watched Words). Das Problem ist, dass bestehende Beiträge die aktualisierte Offenlegung erst anzeigen, wenn Sie den Beitrag bearbeiten. Das widerspricht dem Zweck dieses Anwendungsfalls.
Javascript zum Ersetzen von innerHTML des Elements. Ich muss es falsch gemacht haben – das verursachte Fehler beim Ersetzen eines Kindknotens:
<script type="text/discourse-plugin" version="0.8">
var disclosures = "• Wichtige Offenlegungen: Wir sind nicht verantwortlich usw. usw."
api.decorateCooked($elem => {
var el = $elem[0];
el.innerHTML = el.innerHTML.replace('[DISCLOSURE-GOES-HERE]', disclosures);
});
</script>
Auto-Linkify Theme Component. Ich liebe es für andere Dinge, aber ich möchte den Offenlegungstext anzeigen, nicht einen Link zur Offenlegung.
Ich weiß, dass man Text von der Rails-Konsole aus ersetzen kann, aber ich möchte, dass Moderatoren ihn pflegen.
Es gibt auch einen textlichen Ansatz, der hier helfen kann: Machen Sie die Offenlegungsnachricht “zeitlos” und verlinken Sie auf die Details der Warnung. Anstatt…
Wichtige Offenlegungen: Wir sind nicht verantwortlich, haftbar oder auch nur kenntnisreich über die Behauptungen in diesem Thema.
…wählen Sie etwas wie:
Wichtige Offenlegungen: Dieses Thema enthält Inhalte, die möglicherweise mehr Kontext benötigen, bereitgestellt unter Offenlegungsliste
Dann kann der Großteil Ihrer Aktualisierung auf dieser einen Seite erfolgen, die auch ein Thema in Discourse sein könnte (einfach zu bearbeiten/aktualisieren!).