Menu laterali dei gruppi di Discourse

:information_source: Riepilogo Crea menu laterali personalizzati per gruppi selezionati
:eyeglasses: Anteprima Unisciti a questo gruppo di Theme Creator e poi visualizza in anteprima qui
:hammer_and_wrench: Repository \u003chttps://github.com/Lillinator/discourse-group-sidebar-menus\u003e
:question: Guida all’installazione Come installare un tema o un componente tema
:open_book: Nuovo ai temi di Discourse? Guida per principianti all’utilizzo dei temi di Discourse

Installa questo componente tema

:woman_technologist:t2: Panoramica

Questo componente tema di Discourse offre agli amministratori del forum la possibilità di creare menu laterali personalizzati accessibili solo ai membri di gruppi selezionati.

Caratteristiche principali:

  • Visibilità del menu basata sui gruppi - Le sezioni del menu appaiono nella barra laterale solo per gli utenti autorizzati
  • Configurazione basata su oggetti - Interfaccia utente delle impostazioni facile da usare per la creazione di menu
  • Sezioni multiple - Crea sezioni di menu illimitate per gruppi diversi (ragionevolmente)
  • Collegamento rapido di modifica per l’amministratore - L’icona a forma di matita nelle intestazioni dei menu collega direttamente gli amministratori alle impostazioni del componente

:briefcase: Alcuni casi d’uso

  • Risorse e collegamenti rapidi solo per lo staff
  • Scorciatoie per i moderatori di categoria
  • Portali di gruppo personalizzati (team di progetto, gruppi di studio, club del libro, membri VIP)
  • Collegamenti a risorse del sito web principale o partner

:gear: 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 menu Titolo visualizzato come intestazione della sezione della barra laterale
Gruppi consentiti Gruppi autorizzati a visualizzare questa sezione del menu (max: 20 gruppi per sezione)
Collegamenti menu Raccolta di collegamenti da visualizzare in questa sezione (max: 20 collegamenti per sezione)

Proprietà del collegamento

Proprietà Descrizione
Icona Nome dell’icona FontAwesome (es. circle-info, star, user-group). Potrebbe essere necessario aggiungerla a Admin > Tutte le impostazioni del sito > subset di icone svg
Testo Etichetta di visualizzazione per il collegamento
URL Destinazione del collegamento - supporta percorsi relativi (/faq, /my/preferences) e URL assoluti (https://example.com)

:wrench: Installazione e configurazione

  1. Installa il componente tema come da Installing a theme or theme component.
  2. Vai all’ Editor impostazioni oggetti
  3. Fai clic sul pulsante + new_menu_section per configurare la prima sezione del menu personalizzata
  4. Assegna un titolo al nuovo menu nel campo Titolo menu, quindi seleziona i gruppi a cui vuoi concedere l’accesso.
  5. Fai clic su + new_menu_section per aggiungere un’altra sezione, oppure Salva le modifiche.
Screenshot della configurazione di amministrazione con impostazione di esempio

Installazione pulita - vai a Editor impostazioni oggetti.

Scenario di esempio con 2 menu personalizzati e 3 utenti, di cui uno è un amministratore:

  • @Catra ama i gatti ed è membro del gruppo pink, che avrà accesso al Menu Gatto :grinning_cat:
  • @HelloKitty ama i cani ed è membro del gruppo purple, che avrà accesso al Menu Cane :dog_face:
  • @Lilly è membro di purple perché possiede un cane e i cani sono migliori. Tuttavia, è anche un amministratore del forum e gli amministratori avranno accesso al Menu Gatto perché i gatti hanno bisogno di più supervisione :dog_face: :cat_with_wry_smile:

Crea un nuovo menu personalizzato - per il nostro esempio, crea Menu Gatto e aggiungi i gruppi autorizzati ad accedervi - pink e admins. Quindi fai clic sul pulsante + menu_link per configurare i collegamenti per il nuovo menu.

Aggiungi i collegamenti del menu - 1. Nome icona Fontawesome, 2. testo da visualizzare per il collegamento e 3. l’URL, relativo o assoluto. Fai clic sul pulsante + menu_link per aggiungere un altro collegamento a questo menu.

Crea un’altra sezione del menu personalizzata chiamata Menu Cane, concedi l’accesso solo al gruppo purple e configura i collegamenti:

Screenshot dell'accesso al menu laterale risultante

L’utente @Catra ha il menu Gatto! :grinning_cat:

L’utente @HelloKitty ha il menu Cane! :dog_face:

L’utente amministratore @Lilly ha entrambi i menu e può modificarli! :smiling_cat_with_heart_eyes:

Esempio di configurazione

Titolo Menu: "Risorse Staff"
Gruppi consentiti: staff
Collegamenti:
  - Icona: wrench
    Testo: Guida alla moderazione
    URL: /t/moderation-guide/123
  - Icona: chart-line
    Testo: Dashboard Analitica
    URL: /admin/dashboard

:light_bulb: Note importanti

Accesso Amministratore

Gli amministratori devono aggiungersi ai gruppi per vedere i menu configurati per tali gruppi. Lo stato di amministratore da solo non garantisce l’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 del gruppo

  • Il gruppo everyone non è supportato - Usa l’interfaccia utente del piè di pagina della barra laterale nativa per creare menu personalizzati globali per tutti gli utenti, inclusi i visitatori anonimi.
  • Massimo 20 gruppi per sezione di menu. Se ne hai bisogno di più, crea sezioni duplicate con diverse assegnazioni di gruppo.
  • Gli utenti in più gruppi vedranno tutte le sezioni del menu a cui hanno accesso.

Test e organizzazione

Utilizza account di prova per verificare l’accesso corretto per le diverse combinazioni di gruppi. Tieni traccia delle configurazioni dei tuoi menu per evitare confusione man mano che la complessità aumenta; si consiglia una matrice di accesso o una documentazione simile per forum più grandi con più gruppi.

Considerazioni sulla sicurezza

Questo componente fornisce solo il controllo di accesso a livello di interfaccia utente. Controlla la visibilità del menu, non l’accesso alle risorse.

:white_check_mark: Esperienza di navigazione pulita e organizzata
:white_check_mark: Riduzione del disordine dell’interfaccia utente per gli utenti non autorizzati
:white_check_mark: Portali professionali specifici per gruppo

Questa non è una funzione di sicurezza. Non impedisce l’accesso alle origini dei collegamenti: questo componente controlla solo ciò che viene renderizzato nella barra laterale, non chi può accedere alle risorse effettive.

Affidati sempre al sistema di permessi integrato di Discourse per proteggere le risorse effettive:

  • Configura correttamente le autorizzazioni di categoria
  • Imposta restrizioni di visibilità degli argomenti
  • Utilizza 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’appartenenza ai gruppi - ad esempio: un collegamento di 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, ispirazione e feedback sono stati inestimabili.

9 Mi Piace

Sembra che stia ottenendo un 404 sul repository.

EDIT: Tutto a posto ora!

2 Mi Piace

haha riprova. ho dimenticato di renderlo pubblico! :laughing:

6 Mi Piace

Favoloso! Lo desideravo da tempo. Ho creato una bella collezione di utili menu laterali personalizzati per me: collegamenti per la moderazione, per le attività e i riferimenti degli amministratori, per la documentazione di Discourse, per i contenuti esterni a cui facciamo spesso riferimento nel forum, ecc. Un menu ha collegamenti per le varie riunioni periodiche che utilizza semplicemente il collegamento tag, ad esempio /tag/comm-mgt-monthly che mi aiuta a passare rapidamente agli ordini del giorno e ai verbali correnti e precedenti.

Molte volte ho desiderato un modo per esportare le configurazioni dei miei menu laterali personalizzati in modo che altri membri del mio team potessero importarle: questa è una configurazione di gran lunga superiore!

E le icone! Evviva! Per quanto ne so, l’unico modo per farlo era aggiungere CSS personalizzato. Questa nuova soluzione è elegante.

E sostenibile! Tutti gli amministratori potranno modificare i file di configurazione, quindi non dipenderanno solo da me. Grazie @Lilly e @Moin!

1 Mi Piace

Ciao @Lilly e @Moin,

Grazie per aver creato questo componente.

Stavo usando Group sidebar menu sections - deprecated sul mio sito self-hosted e al mio ultimo aggiornamento sono stato avvisato che il vecchio componente tema era stato deprecato e di installare questo, invece.

Ho installato il componente e creato il mio menu di gruppo personalizzato, ma non riesco a capire come spostare il menu di gruppo. (Devo star guardando proprio qualcosa di ovvio. :see_no_evil_monkey:) Nei vostri screenshot, il vostro Cat Menu e Dog Menu sono nella navigazione della barra laterale sopra la sezione Topics, ma il mio menu di gruppo personalizzato appare in fondo alla mia navigazione della barra laterale. Come posso spostarlo sopra Topics?

1 Mi Piace

Non è ovvio. Lilly ha usato Discourse Sidebar Menu Reorder per mettere cat-menu in cima

2 Mi Piace

Grazie mille! È stato molto facile da configurare.

2 Mi Piace