Sì, segui questa guida: Replace Discourse's default SVG icons with custom icons in a theme
Aggiornamento, per favore. Ho la stessa domanda.
Di default, Discourse utilizza l’icona del link in fondo al post come pulsante “condividi” (è più di un semplice link, offre la condivisione sui social media), ma la stessa icona viene utilizzata nell’editor per modificare un link.
Dovrebbero essere davvero diverse; hanno funzioni differenti. OPPURE, se qualcuno sa come sovrascrivere la modifica globale nell’editor dei post, ne sarei grato.
Recentemente ho cambiato l’icona del Mi piace da “cuore” a “book-reader”.
Ho avuto grande successo nel cambiare tutte le icone del Mi piace, tranne quella nelle notifiche, nell’elenco a discesa.

Ho utilizzato l’intestazione seguente, aggiungendo tutte le opzioni possibili a cui ho pensato:
<script type="text/discourse-plugin" version="0.8">
api.replaceIcon('d-unliked', 'book-reader');
api.replaceIcon('d-liked', 'book-reader');
api.replaceIcon('heart', 'book-reader');
api.replaceIcon('new read', 'book-reader');
api.replaceIcon('d-icon-heart', 'book-reader');
api.replaceIcon('notification.liked', 'book-reader'); // notifiche
api.replaceIcon('notification.liked_2', 'book-reader'); // notifiche
api.replaceIcon('notification.liked_many', 'book-reader'); // notifiche
</script>
Il cuore è stato sostituito ovunque sulla piattaforma, tranne che nell’elenco a discesa delle notifiche…
Qualche idea?
Prova ad aggiungere anche
api.replaceIcon('notification.liked_consolidated', 'book-reader');
Grazie per la risposta, Daniela!
L’ho aggiunto, ma non c’è stato alcun cambiamento. Il cuore appare ancora come icona di notifica.
<script type="text/discourse-plugin" version="0.8">
api.replaceIcon('d-unliked', 'book-reader');
api.replaceIcon('d-liked', 'book-reader');
api.replaceIcon('heart', 'book-reader');
api.replaceIcon('new read', 'book-reader');
api.replaceIcon('d-icon-heart', 'book-reader');
api.replaceIcon('notification.liked', 'book-reader');
api.replaceIcon('notification.liked_2', 'book-reader');
api.replaceIcon('notification.liked_many', 'book-reader');
api.replaceIcon('notification.liked_consolidated', 'book-reader');
</script>
A parte questo caso, l’icona book-reader ha sostituito tutte le icone a cuore ovunque.
Pensavo potesse essere un conflitto di icone, quindi ho cambiato da “book-reader” a “pencil”, dato che so che le notifiche possono usare quell’icona. Non ha funzionato, c’è ancora un cuore.
Hai qualche idea?
Ho provato a sostituire l’icona envelope con l’icona inbox, ma le modifiche non vengono applicate alle icone all’interno del pannello del menu utente. Devono essere targettizzate in un modo specifico?
Il mio snippet:
// {theme}/javascripts/discourse/api-initializers/init-theme.gjs
import { apiInitializer } from "discourse/lib/api";
export default apiInitializer((api) => {
api.replaceIcon("envelope", "inbox");
});
Ciao @jrgong ![]()
Qui puoi trovare le sostituzioni delle icone che contengono le notifiche.
Aggiungi questa riga al tuo snippet:
api.replaceIcon("notification.private_message", "inbox");