(non raccomandato) Sovrascrivere i modelli Discourse da un tema o plugin

Sì, ti capisco: c’erano alcune cose interessanti nelle API di estensibilità dei widget.

Ma il rovescio della medaglia è che è stato incredibilmente difficile per noi modificare QUALSIASI interfaccia utente basata su widget nel core, perché non abbiamo idea di quali metodi/decorazioni casuali le persone potrebbero introdurre. Ecco perché le personalizzazioni dei widget sono sembrate relativamente stabili: eravamo troppo spaventati per toccare le implementazioni principali.

La nostra soluzione per questo in futuro sono i Plugin Outlets Wrapper. Questi consentono a temi e plugin di sovrascrivere facoltativamente piccoli frammenti di template con la propria implementazione.

Ad esempio, vedi come Chat sovrascrive condizionalmente il logo della home con un componente personalizzato. Questo funziona per l’intestazione esistente basata su widget e per la nuova intestazione basata su glimmer (in arrivo! :tm:).

Siamo generalmente felici di accettare PR per aggiungere nuovi wrapper outlets in vari punti. Se non sei sicuro di un particolare caso d’uso, non esitare ad aprire un topic Dev con i dettagli!

10 Mi Piace