È necessario aggiungere un disclaimer o una nota informativa a determinati post (circa 100 e in aumento). La nota informativa potrebbe cambiare in futuro, quindi vorrei aggiungere [DISCLOSURE-GOES-HERE] a ciascuno dei 100 post. Possiamo aggiungerlo manualmente, non è un problema. Ma quando aggiorneremo la nostra nota informativa in futuro, vorrei cambiarla solo in un posto.
Cosa ho provato:
Watched Words. Il problema è che i post esistenti non mostrano la nota informativa aggiornata finché non si modifica il post. Questo vanifica lo scopo per questo caso d’uso.
Javascript per sostituire innerHTML dell’elemento. Devo averlo fatto in modo errato: questo ha causato errori sulla sostituzione di un nodo figlio:
<script type="text/discourse-plugin" version="0.8">
var disclosures = "• Note informative importanti: Non siamo responsabili, ecc., ecc."
api.decorateCooked($elem => {
var el = $elem[0];
el.innerHTML = el.innerHTML.replace('[DISCLOSURE-GOES-HERE]', disclosures);
});
</script>
Componente tema Auto-linkify. Mi piace per altre cose, ma voglio visualizzare il testo della nota informativa, non un link alla nota informativa.
So che è possibile sostituire il testo dalla console rails, ma voglio che siano i moderatori a gestirlo.
C’è anche un approccio testuale che può aiutare: rendere il messaggio di divulgazione “evergreen” e collegarlo ai dettagli dell’avviso. Invece di…
Divulgazioni importanti: non siamo responsabili, né siamo a conoscenza delle affermazioni in questo argomento.
…optare per qualcosa come:
Divulgazioni importanti: questo argomento contiene contenuti che potrebbero necessitare di ulteriore contesto, fornito in Elenco Divulgazioni
Quindi la maggior parte del tuo aggiornamento può essere in quella pagina, che potrebbe anche essere un argomento in Discourse (facile da modificare/aggiornare!).