È possibile cambiare l'icona per gli avvisi dello staff?

È possibile cambiare l’icona utilizzata negli Avvisi allo Staff, sia tramite CSS che tramite un’impostazione che semplicemente non ho ancora trovato? Preferibilmente, vorremmo sostituirla con un’immagine personalizzata invece di un’icona FA.

1 Mi Piace

Non abbiamo un’impostazione per questo e penso che farlo solo in CSS sia difficile, ma puoi creare un componente tema per sostituirlo.

In CSS, nasconderai la vecchia icona:

.post-notice {
  .d-icon-user-shield {
    display: none;
  }
}

In JavaScript (lo inserisci nel tag <head> del componente tema), decorerai l’avviso e aggiungerai la nuova icona:

<script type="text/discourse-plugin" version="0.8">
  const { iconNode } = require("discourse-common/lib/icon-library");
  api.decorateWidget('post-notice:before', helper => {
    return iconNode('heart');
  });
</script>

… oppure, se vuoi sostituire con un’immagine…:

<script type="text/discourse-plugin" version="0.8">
  api.decorateWidget('post-notice:before', helper => {
    return helper.h('img', {
      src: 'https://www.discourse.org/a/img/home-spot-1.png',
      style: 'margin-right: 0.65em',
      height: 30,
      width: 30
    });
  });
</script>

Con i temi e i componenti tema, i limiti sono solo quelli del cielo. Se vuoi saperne di più, abbiamo una risorsa a riguardo:

12 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Ho appena provato questo; il primo snippet di codice JS necessitava di un piccolo aggiornamento.

Questo ora deve essere inserito nella scheda JS di un Componente Tema (o Tema) invece:

import { apiInitializer } from "discourse/lib/api";
import { iconNode } from "discourse-common/lib/icon-library";

export default apiInitializer("0.11.1", (api) => {
  api.decorateWidget("post-notice:before", () => {
    return iconNode("heart");
  });
});

Mi dispiace, non ho guardato come usare un’immagine al posto di questo.

3 Mi Piace

Dopo averlo aggiunto al mio tema, ho visto un avviso a causa di Upcoming post stream changes - How to prepare themes and plugins. Quindi sono preoccupato che presto sarà necessario un altro aggiornamento.

Ho provato questo perché ero curioso di sapere se interessasse solo le note dello staff o anche le note dei nuovi utenti e di quelli di ritorno, poiché si tratta di avvisi di post.
Interessa tutti gli avvisi di post, mentre il CSS sopra nasconde solo lo scudo. Quindi finisci con due icone sugli avvisi per i nuovi utenti e per quelli di ritorno.

1 Mi Piace

Questo è tutto un po’ insoddisfacente allora!!

Nella fretta di pubblicare, ho dimenticato di rimuovere api.decorateWidget. Devo aver ignorato l’errore sul mio sito senza rendermene conto.

Sono sicuro che il CSS potrebbe essere mirato meglio, ma ho appena scoperto Quote Callouts - questo farà comunque meglio il mio caso d’uso, penso.

3 Mi Piace