| Riepilogo | Crea menu nella barra laterale personalizzati per gruppi selezionati | |
| Anteprima | Unisciti a questo gruppo Theme Creator e poi visualizza l’anteprima qui | |
| Repository | https://github.com/Lillinator/discourse-group-sidebar-menus | |
| Guida all’installazione | Come installare un tema o un componente del tema | |
| Nuovo ai temi di Discourse? | Guida per principianti all’uso dei temi di Discourse |
Installa questo componente del tema
Panoramica
Questo componente del tema per Discourse offre agli amministratori del forum la possibilità di creare menu nella barra laterale personalizzati accessibili solo ai membri di gruppi selezionati.
Caratteristiche principali:
- Visibilità del menu basata sui gruppi: le sezioni del menu vengono visualizzate nella barra laterale solo per gli utenti autorizzati
- Configurazione basata sugli oggetti: interfaccia utente delle impostazioni facile da usare per creare menu
- Sezioni multiple: crea sezioni di menu illimitate per diversi gruppi (entro limiti ragionevoli)
- Collegamento rapido di modifica per gli amministratori: l’icona della matita nelle intestazioni dei menu collega gli amministratori direttamente alle impostazioni del componente
Alcuni casi d’uso
- Risorse e collegamenti rapidi riservati allo staff
- Scorciatoie per i moderatori delle categorie
- Portali personalizzati per gruppi (squadre di progetto, gruppi di studio, club di lettura, membri VIP)
- Collegamenti a risorse di siti web partner o principali
Impostazioni
Sezioni del menu (menu_sections)
Apre l’editor delle impostazioni degli oggetti per configurare le sezioni del menu di gruppo personalizzate.
Proprietà della sezione
| Proprietà | Descrizione |
|---|---|
| Titolo del menu | Titolo visualizzato come intestazione della sezione nella barra laterale |
| Gruppi consentiti | Gruppi autorizzati a visualizzare questa sezione del menu (max: 20 gruppi per sezione) |
| Collegamenti del menu | Collezione di collegamenti da visualizzare in questa sezione (max: 20 collegamenti per sezione) |
Proprietà del collegamento
| Proprietà | Descrizione |
|---|---|
| Icona | Nome dell’icona FontAwesome (ad esempio, circle-info, star, user-group). Potrebbe essere necessario aggiungerla a Admin > Tutte le impostazioni del sito > sottoinsieme di icone svg |
| Testo | Etichetta di visualizzazione per il collegamento |
| URL | Destinazione del collegamento: supporta sia percorsi relativi (/faq, /my/preferences) che URL assoluti (https://example.com) |
Installazione e configurazione
- Installa il componente del tema come descritto in Installing a theme or theme component.
- Vai all’
Editor delle impostazioni degli oggetti - Clicca sul pulsante
+ new_menu_sectionper impostare la prima sezione del menu personalizzata - Assegna un titolo al nuovo menu nel campo
Menu titlee seleziona i gruppi che desideri abbiano accesso ad esso. - Clicca su
+ new_menu_sectionper aggiungere un’altra sezione o salva le modifiche.
Screenshot della configurazione amministrativa con esempio di impostazione
Installazione nuova: vai all’Editor delle impostazioni degli oggetti.
Scenario di esempio con 2 menu personalizzati e 3 utenti, di cui uno amministratore:
@Catraama i gatti ed è membro del gruppopink, che avrà accesso alCat Menu@HelloKittyama i cani ed è membro del gruppopurple, che avrà accesso alDog Menu@Lillyè membro del gruppopurpleperché possiede un cane e i cani sono migliori. Tuttavia, è anche un’amministratrice del forum, e gli amministratori avranno accesso alCat Menuperché i gatti necessitano di maggiore supervisione![]()
Crea un nuovo menu personalizzato: per il nostro esempio, crea Cat menu e aggiungi i gruppi autorizzati ad accedervi: pink e admins. Quindi clicca sul pulsante + menu_link per impostare i collegamenti per il nuovo menu.
Aggiungi i collegamenti del menu: 1. Nome dell’icona FontAwesome, 2. testo da visualizzare per il collegamento e 3. l’URL, relativo o assoluto. Clicca sul pulsante + menu_link per aggiungere un altro collegamento a questo menu.
Crea un’altra sezione del menu personalizzata chiamata Dog menu, concedi accesso solo al gruppo purple e configura i collegamenti:
Screenshot dell'accesso risultante al menu nella barra laterale
L’utente @Catra ha il menu dei gatti! ![]()
L’utente @HelloKitty ha il menu dei cani! ![]()
L’utente amministratore @Lilly ha entrambi i menu e può modificarli! ![]()
Esempio di configurazione
Menu Title: "Cose per gatti"
Allowed Groups: team-cat
Links:
- Icon: link
Text: Video e foto di gatti
URL: /t/cat-videos-and-photos/123
- Icon: magnifying-glass
Text: Wiki sui gatti
URL: https://en.wikipedia.org/wiki/Cat
Note importanti
Accesso amministratore
Gli amministratori devono aggiungersi ai gruppi per vedere i menu configurati per quei gruppi. Lo status di amministratore da solo non concede accesso a tutti i menu personalizzati. Questo è intenzionale! Inoltre, gli amministratori che appartengono ai gruppi consentiti di un menu vedranno un’icona a forma di matita nell’intestazione della sezione che collega alle impostazioni del componente.
Configurazione dei gruppi
- Il gruppo
everyonenon è supportato: usa l’interfaccia utente nativa del piè di pagina della barra laterale per creare menu personalizzati globali per tutti gli utenti, inclusi i visitatori anonimi. - Massimo 20 gruppi per sezione del menu. Se ne hai bisogno di più, crea sezioni duplicate con assegnazioni di gruppo diverse.
- Gli utenti appartenenti a più gruppi vedranno tutte le sezioni del menu a cui hanno accesso.
Test e organizzazione
Utilizza account di test per verificare l’accesso corretto per diverse combinazioni di gruppi. Tieni traccia delle configurazioni del menu per evitare confusione man mano che la complessità aumenta; per forum più grandi con molti gruppi, si consiglia una matrice di accesso o una documentazione simile.
Considerazioni sulla sicurezza
Questo componente fornisce solo un controllo degli accessi a livello di interfaccia utente. Controlla la visibilità del menu, non l’accesso alle risorse: questo componente controlla solo ciò che viene visualizzato nella barra laterale, non chi può accedere alle risorse effettive.
Fai sempre affidamento sul sistema di autorizzazione integrato di Discourse per proteggere le risorse effettive:
- Configura correttamente le autorizzazioni delle categorie
- Imposta restrizioni di visibilità degli argomenti
- Usa controlli di accesso basati sui gruppi per i contenuti
- Assicurati che le risorse private richiedano l’autenticazione
Migliore pratica per gli amministratori:
Configura separatamente le autorizzazioni di sicurezza delle categorie collegate e l’iscrizione ai gruppi: ad esempio, un collegamento del menu a una categoria privata deve avere le autorizzazioni di quella categoria configurate correttamente. Gli amministratori sono responsabili di garantire che i collegamenti a risorse esterne siano autorizzati in modo appropriato per i gruppi selezionati.
Questo è stato un progetto collaborativo con @Moin: il suo contributo, l’ispirazione e il feedback sono stati inestimabili.
Scopri il mio altro materiale su Discourse







