dsims
(Daniel)
13 Febbraio 2025, 7:12pm
1
Voglio aggiungere l’avatar del creatore dell’argomento agli estratti dell’elenco degli argomenti, ma non sembra esserci alcun modo per modificare l’estratto dell’argomento.
TopicExcerpt:
Penso che l’unica opzione sia nascondere .topic-excerpt con CSS e utilizzare il mio componente tramite il topic-list-main-link-bottom Plugin Outlet che si trova appena sotto l’area TopicExcerpt. Il problema con questo è che il plugin outlet riceve solo l’argomento come parametro, quindi devo duplicare tutta la logica in expandPinned per sapere se devo mostrarlo o meno.
tl;dr; Potremmo avere un PluginOutlet all’interno di TopicExcerpt e/o passare @expandPinned agli outlet topic-list-main-link-bottom?
1 Mi Piace
merefield
(Robert)
13 Febbraio 2025, 7:20pm
2
Ora hai più opzioni, vedi:
The topic-list is one of the most-used and most-customized user-interfaces in Discourse. There are many different tools available to theme and plugin developers to achieve this customization, each with their own advantages, disadvantages and maintenance considerations.
CSS-based Customization
The safest and most common customization method is CSS. As with any other Discourse customization: the more complex your changes, the more maintenance is likely to be required in your theme or plugin.
Gen…
1 Mi Piace
dsims
(Daniel)
13 Febbraio 2025, 7:31pm
3
Per quanto ne so, ho esaminato tutte le opzioni. Non vedo alcun modo chirurgico per modificare solo l’estratto.
merefield
(Robert)
13 Febbraio 2025, 7:32pm
4
sì, c’è, eliminalo e aggiungi il tuo
dsims
(Daniel)
13 Febbraio 2025, 7:40pm
5
Intendi sostituire l’intero elemento dell’elenco dell’argomento con il mio? Vorrei evitare di dover mantenere tutto questo quando voglio solo modificare una piccola parte.
merefield
(Robert)
13 Febbraio 2025, 7:41pm
6
no, sostituisci la cella degli estratti, oppure aggiungine un’altra accanto e nascondila.
dsims
(Daniel)
13 Febbraio 2025, 7:46pm
7
L’estratto non è una cella. Viene utilizzato all’interno di topic-cell e in mobile item
Puoi anche vedere lì che il plugin-outlet topic-list-main-link-bottom nelle vicinanze passa solo @topic , ma non @expandPinned .
1 Mi Piace
merefield
(Robert)
13 Febbraio 2025, 7:52pm
8
Ah sì, hai ragione, mi scuso.
Ho visto il file nei componenti della lista degli argomenti e ho fatto un’ipotesi.
Ma in ogni caso, ci sono molti strumenti per ottenere ciò che desideri qui, no?
L’outlet del plugin sembra una buona opzione e poi manipolare il layout con CSS?
merefield
(Robert)
13 Febbraio 2025, 8:00pm
9
Per quanto riguarda expandPinned, forse replicare la logica nel tuo nuovo Component quanto necessario?
dsims
(Daniel)
13 Febbraio 2025, 8:35pm
10
Sì, è la strada che stavo percorrendo. Il che significa anche replicare
get useMobileLayout() {
return applyValueTransformer(
"topic-list-item-mobile-layout",
this.site.mobileView,
{ topic: this.args.outletArgs.topic }
);
}
//e da discovery/topics.js
get expandGloballyPinned() {
!this.expandAllPinned();
}
get expandAllPinned() {
const category = this.discovery.category?.id
const tag = this.discovery.tag?.id
return category || tag;
}
Speravo che invocare gli dei potesse produrre un’opzione più pulita
1 Mi Piace
merefield
(Robert)
13 Febbraio 2025, 8:36pm
11
È quello che faccio di solito il lunedì mattina.
2 Mi Piace
questo sembra ragionevole, quindi l’ho fatto qui:
main ← dev-expandpinned-outlet
opened 08:33PM - 13 Feb 25 UTC
Requested on Meta, seems reasonable: https://meta.discourse.org/t/modify-topicex… cerpt-template/352136
5 Mi Piace
system
(system)
Chiuso
16 Marzo 2025, 2:40pm
13
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.