Elenco argomenti nelle barre laterali

:information_source: In precedenza “Discourse Category Sidebars” — il nome di questo componente del tema è stato aggiornato a Topic List Sidebars ora che supporta sia le categorie che i tag.

:discourse2: Riepilogo Topic List Sidebars prende un argomento e lo applica come barra laterale per l’elenco degli argomenti di una categoria o di un tag.
:eyeglasses: Anteprima Anteprima su Discourse Theme Creator
:hammer_and_wrench: Link al Repository https://github.com/discourse/discourse-topic-list-sidebars
:open_book: Nuovo a Discourse Themes? Guida per principianti all’uso di Discourse Themes

Installa questo componente del tema

Funzionalità

Questo componente del tema prende un argomento e lo applica come barra laterale per l’elenco degli argomenti di una categoria o di un tag. Queste barre laterali sono visibili solo quando il browser ha una larghezza di 767px o superiore (la maggior parte dei tablet e dei monitor).

Cosa posso fare con questo componente del tema?

  • Scegli un argomento e visualizza il suo contenuto come barra laterale per una categoria o un tag.

  • Imposta una barra laterale da visualizzare sulle pagine /latest, /new, /unread e /top utilizzando all come nome della categoria nelle tue impostazioni.

  • Scegli se le barre laterali devono apparire a sinistra o a destra dell’elenco degli argomenti.

  • Di default, la barra laterale di una categoria verrà visualizzata anche per tutte le sue sottocategorie, a meno che una sottocategoria non abbia la propria barra laterale definita (puoi disabilitare questa funzione deselezionando l’impostazione inherit parent sidebar).

Come configurarlo?

Scegli le tue categorie e tag e aggiungi l’ID dell’argomento (ad esempio example.com/t/example-topic/57) che desideri utilizzare per popolare il contenuto della barra laterale.

Consiglio di creare gli argomenti delle barre laterali nelle rispettive categorie/tag, chiudendo l’argomento in modo che non ci siano risposte e rendendolo non elencato (in modo che non appaia nell’elenco degli argomenti).

Tieni presente che non puoi utilizzare un argomento in una categoria privata come barra laterale in una categoria pubblica (tecnicamente puoi, ma gli utenti senza accesso a quell’argomento privato vedranno solo una barra laterale vuota!).

Impostazioni

Nome Descrizione
sidebars Aggiungi e rimuovi barre laterali
sidebar side Scegli tra Sinistra o Destra
inherit parent sidebar Se selezionato, le sottocategorie erediteranno la barra laterale della categoria principale (a meno che la sottocategoria non abbia la propria barra laterale assegnata).

Quando deselezionato, le sottocategorie visualizzeranno una barra laterale solo se specificata.
stick on scroll Quando selezionato, la barra laterale ha una posizione fissa durante lo scorrimento

Note per gli sviluppatori

Ogni barra laterale di categoria è racchiusa in una classe che contiene lo slug della categoria; quindi, per la categoria staff sarebbe .category-sidebar-staff. Puoi utilizzare queste classi per stilizzare le singole barre laterali.

Il tag body sulle pagine con barre laterali ha anche una classe aggiunta, quindi puoi usare body.custom-sidebar per applicare stili a tutte le pagine che hanno una barra laterale.

Crediti

:heart: Ringraziamenti speciali a @xrav3nz per aver gettato le basi per rendere possibile questo componente!


:discourse2: Ospitato da noi? I componenti del tema sono disponibili per l’uso nei nostri piani Standard, Business ed Enterprise.

59 Mi Piace

Trying to figure out how to make this work with tags as well. (we use tags heavily rather than having tons of categories.)

It looks like it may be about replacing controller:navigation/category with whatever the equivalent for tags is but not sure.

2 Mi Piace

Ho dato un’occhiata veloce e sembra possibile farlo per i tag…

Probabilmente ci lavorerò di più domani e lo sposterò in un repository dedicato.

Esatto, è il cuore della questione — questo sembra funzionare per i tag:

const controller = container.lookup("controller:tags-show");
const tag = controller.get("tag");

Aggiornamento: Ho reso disponibile un componente del tema, Barre laterali dei tag di Discourse

10 Mi Piace

Since I am using the header submenu plugin, A part of the text is covered by my header bar. It would be great if it was possible to add extra margin/offset or whatever it’s called for the case when additional elements before the header are covering the sidebar’s content.

Also: is there any way to keep the category drop down menu above the sticky sidebar’s content? that would make it easy for users to jump between categories quickly.

altogether I think the category sidebar is a great plugin and has huge potential to add useful information to the forum structure!

Un altro ottimo plug-in, Kris, grazie!

Ho alcune domande/suggerimenti con cui spero tu possa aiutarmi…

1 - È possibile fare in modo che, quando un utente naviga nel forum passando da una pagina all’altra, la barra laterale controlli sempre l’ultima versione del post che contiene? Al momento, penso che il contenuto della barra laterale si aggiorni solo al ricaricamento della pagina? Purtroppo, i contenuti che cambiano raramente iniziano a sembrare obsoleti agli utenti (in particolare a quelli più attivi), quindi vorrei aggiornare frequentemente l’argomento associato alla barra laterale, se possibile. (Allo stesso modo, se l’ID dell’argomento nelle opzioni per quella pagina viene modificato, dovrebbe rilevarlo alla prossima visualizzazione della pagina). Sono perfettamente disposto ad accettare il carico aggiuntivo per pagina/visualizzazione, ma se temi che altri potrebbero non esserlo, potresti aggiungere un’opzione “memorizza nella cache i contenuti dei post” che lo faccia funzionare come fa ora.

2 - È possibile associare/recuperare contenuti da più di un argomento per la barra laterale? Ad esempio, nella pagina “Ultime”, potresti voler mostrare i contenuti degli argomenti 33 e 55 (in quell’ordine). Sarebbe fantastico per consentire contenuti diversi per pagina, includendo allo stesso tempo informazioni/link comuni che desideri apparire in fondo a ogni barra laterale.

3 - È possibile espandere il plug-in in modo che possa essere utilizzato in tutto il sito? Al momento, penso che possa essere utilizzato solo su determinate pagine? Idealmente, vorrei utilizzarlo in tutto il forum, in tutte le sezioni/pagine principali. (Forse il tuo plug-in della barra laterale con tag potrebbe essere utilizzato in combinazione con questo per un controllo più preciso, ad esempio per singoli tag e/o argomenti: credo che la combinazione dei due potrebbe diventare un pacchetto per barre laterali molto potente!!)

4 - È possibile aggiungere un’opzione per la larghezza della barra laterale, oltre a un punto di interruzione/nascita configurabile? Non è un problema enorme, poiché può essere fatto tramite modifiche CSS, ma penso che sarebbe bello averlo nelle opzioni.

5 - Ultima ma non meno importante… potresti far funzionare i sondaggi? Credo che permettere agli utenti di votare nei sondaggi direttamente dalla barra laterale sarebbe fantastico!!! Trovo che contenuti dinamici come questi nelle barre laterali possano renderle interessanti per gli utenti, rendendoli meno propensi a ignorarle automaticamente.

Penso che con tutto quanto sopra questo plug-in sarebbe un ottimo candidato per essere incluso nel core o come plug-in ufficiale DC: a mio avviso potrebbe aiutare le persone a dare un’impronta personale ai loro forum e sono sicuro che verrebbero utilizzati in modi divertenti e interessanti! :smiley:

Ciao,

Ottimo componente. È possibile avere una barra laterale del genere per ogni argomento sotto una categoria specifica?

Grazie.

Qual è la sintassi per indirizzare una sottocategoria? Ecco cosa ho provato finora:

categoria/sottocategoria,123
sottocategoria,123
categoria-sottocategoria,123

Nessuna di queste sembra funzionare. Le categorie principali vengono visualizzate, però.

1 Mi Piace

Hm, qualcuno, per favore? Non dovrebbe essere così difficile dare una risposta…

Sembra che ci sia stata una regressione e le sottocategorie non funzionavano in alcuni casi; la sintassi dovrebbe essere la stessa delle categorie: sottocategoria, 123.

Ho rifattorizzato il tema, quindi se lo aggiornate le sottocategorie dovrebbero funzionare come previsto!

6 Mi Piace

Ha funzionato alla perfezione!
Grazie mille, proprio in tempo per la nostra grande apertura.

1 Mi Piace

Plugin fantastico!

Per caso è possibile anche per i gruppi? Avere una barra laterale per i gruppi sarebbe fantastico per fornire informazioni sul gruppo.

Qualcuno può indirizzarmi su come ottenere i parametri del gruppo (far sapere al componente che ci si trova all’interno di un gruppo) in modo da poterci provare e creare un PR da solo?

@hyphalos Ho creato un Widget Gruppi che può essere aggiunto alle barre laterali del Plugin Layouts.

Forse il codice che avevo per quello ti aiuterà a scrivere la tua PR:

In alternativa, potresti anche usare il plugin Layouts e il widget stesso.

2 Mi Piace

Potrebbe essere un po’ audace chiederlo, dato che si chiama sidebar, ma: sarebbe possibile aggiungere un’opzione per posizionare il contenuto non a lato, ma sempre sopra l’elenco degli argomenti?

Utilizziamo Discourse come intranet sociale e per alcune categorie abbiamo la necessità di un’area ben mantenibile per link, elenchi di persone, ecc. - questo meccanismo sarebbe ottimo per questo scopo, ma c’è semplicemente troppo poco spazio nella barra laterale.
Sono benvenuti anche gli hack CSS.

Ho già provato i banner di categoria, ma sono limitati al primo paragrafo, quindi questa non è un’opzione.

Saluti,
Ralf
(Biblioteca di Stato di Berlino)

E per quanto riguarda questo TC?

Penso che rimarrai comunque bloccato con il primo paragrafo. Ma ciò potrebbe potenzialmente essere modificato.

Ciao Kris, questo è molto carino.

Mi stavo chiedendo se questo potesse essere modificato o avere un’opzione per spostarlo da una barra laterale a una barra superiore sotto l’intestazione del sito o magari appena sotto il logo di una categoria?

Oppure se potessi ricevere indicazioni su come aggiungere CSS personalizzato per spostarlo e anche farlo visualizzare per dispositivi mobili come una barra superiore appiccicosa? ancorata appena sotto la barra principale del sito?

Potrei fraintendere come funziona questo componente del tema, ma potrebbe essere utilizzato per mostrare l’elenco degli argomenti a sinistra, fare clic su un argomento nell’elenco e visualizzare i post sulla destra (mantenendo l’elenco degli argomenti bloccato a sinistra)? Non ho bisogno di vedere le categorie. Sembrerebbe Flarum.

1 Mi Piace

No, ciò che fa questo componente è prelevare il contenuto da un argomento e utilizzarlo per popolare una barra laterale per l’elenco degli argomenti di una categoria specifica. Non è visibile quando si naviga in un argomento.

Va bene, grazie!

Ciao a tutti! Ho appena unito un importante aggiornamento a questo componente che fa alcune cose: FEATURE: include tag sidebars, migrate to objects setting by awesomerobot · Pull Request #22 · discourse/discourse-topic-list-sidebars · GitHub

  • Migra l’impostazione dello stile dell’elenco a un’impostazione di oggetti. Ciò significa:
    • Ogni barra laterale può essere configurata per più categorie contemporaneamente
    • Ora puoi selezionare le categorie dal menu a discesa invece di aggiungere manualmente gli slug
    • Include anche un’opzione per i tag! ciò significa che non avrai più bisogno di un componente separato (Discourse Tag Sidebars)

Le impostazioni esistenti dovrebbero migrare automaticamente all’aggiornamento… a meno che il tuo slug sia diverso dal nome della categoria, nel qual caso dovrai aggiornare manualmente le impostazioni.

Ad esempio, site-feedback migrerà correttamente a Site Feedback, ma non esiste un metodo per migrare slug che non corrispondono ai nomi (ad esempio, il tuo slug per Site Feedback è hamburgers invece di site-feedback).

Probabilmente cambierò il nome di questo componente tematico e deprecerò le barre laterali dei tag per riflettere la nuova situazione.

5 Mi Piace

Verranno migrate automaticamente anche le impostazioni dei tag?

Con la nuova configurazione, ci possono essere barre laterali diverse per lo stesso tag in categorie diverse? Come vengono risolti i conflitti?

2 Mi Piace