Controllo visualizzazione menu di navigazione (sidebar)

|||
| - | - | - |
| :information_source: | Riepilogo | Consente la visualizzazione di sezioni e collegamenti per staff, utenti connessi e anonimi |
| :hammer_and_wrench: | Repository| https://github.com/Lillinator/navigation-menu-display-control |
| :question: | Guida all’installazione | Come installare un tema o un componente tema |
| :open_book: | Nuovo ai temi di Discourse? | Guida per principianti all’uso dei temi di Discourse |

Installa questo componente tema

Descrizione

Il componente tema Navigation Menu Display Control consente la visualizzazione di varie sezioni e collegamenti predefiniti solo per lo staff e/o solo per gli utenti connessi. È inoltre possibile specificare sezioni personalizzate o collegamenti personalizzati (sono inclusi nomi segnaposto). Inoltre, è presente un’impostazione per la visualizzazione di una sezione del menu personalizzata solo per gli utenti anonimi, nonché impostazioni per definire l’ordine delle sezioni predefinite (categoria, tag, chat, canali, messaggi). Le sezioni e i collegamenti nelle impostazioni sono elenchi che possono essere modificati con sezioni esistenti (vedi screenshot sotto), nonché con tutte le sezioni o i collegamenti personalizzati che si desidera aggiungere.

Impostazioni

:point_right:t2: Per le sezioni del menu personalizzate, devono essere visibili a livello globale quando le si imposta (la casella di controllo Rendi questa sezione pubblica e visibile a tutti deve essere abilitata).
La sezione superiore è chiamata “community” nel codice, quindi se si desidera nascondere tale sezione, utilizzare il nome della sezione “community”. È possibile utilizzare i collegamenti installati con i plugin, ad esempio i collegamenti per documenti, anniversari e compleanni.
Sono inoltre presenti impostazioni che si sovrappongono a vicenda: avere un collegamento specifico in “Altro” visibile agli utenti connessi verrà sovrascritto dall’impostazione del menu a discesa “Altro” visibile solo allo staff.

Nome impostazione Descrizione
mostra queste sezioni solo allo staff Elenco delle sezioni da mostrare solo allo staff. Può includere sezioni personalizzate con il formato di denominazione “Staff Menu = staff-menu”.
mostra queste sezioni solo agli utenti connessi Elenco delle sezioni da mostrare solo agli utenti connessi. Può includere sezioni personalizzate con il formato di denominazione “User Menu = user-menu”.
mostra questi collegamenti solo allo staff Elenco dei collegamenti da mostrare solo allo staff. Può includere collegamenti personalizzati denominati con lo stesso formato maiuscolo (“Staff Link” = “Staff Link”).
mostra questi collegamenti solo agli utenti connessi Elenco dei collegamenti da mostrare solo agli utenti connessi. Può includere collegamenti personalizzati denominati con lo stesso formato maiuscolo (“User Link” = “User Link”)
mostra altro solo allo staff Casella di controllo per mostrare la sezione a discesa “Altro” solo allo staff.
mostra altro solo agli utenti connessi Casella di controllo per mostrare la sezione a discesa “Altro” solo agli utenti connessi.
mostra personalizzato solo per anonimi Campo di testo per una sezione del menu personalizzata da mostrare solo agli utenti anonimi (nasconde agli utenti connessi).
mostra menu di navigazione solo agli utenti connessi Casella di controllo per mostrare l’intero menu della barra laterale di navigazione solo agli utenti connessi (nasconde agli utenti anonimi).
nascondi icone globo menu personalizzati Nasconde l’icona del globo allo staff per le sezioni del menu personalizzate (non visibile ai non staff per impostazione predefinita).
ordinamento sezioni menu predefinite Consente di riordinare le sezioni del menu predefinite (non si applica ai menu personalizzati)

Screenshot

Impostazioni per sezioni solo staff e utenti connessi

Impostazioni per collegamenti solo staff e utenti connessi

Impostazioni per la sezione Altro, la sezione del menu personalizzata solo per utenti anonimi, l'icona del globo, la visualizzazione dell'intero menu di navigazione e la modifica dell'ordine delle sezioni del menu predefinite


Per le sezioni del menu della barra laterale di navigazione specifiche per gruppi personalizzati, utilizzare il componente tema Group Menu Sections.

24 Mi Piace

Aggiunta una sezione per consentire il riordino delle sezioni del menu predefinite.

5 Mi Piace

Non credo che la cosa di nascondere i link stia funzionando correttamente al momento.

Le sezioni si nascondono bene per me, ma non riesco a nascondere singoli link personalizzati quando li converto in minuscolo e trattini.

Ma i link ufficiali sembrano aver bisogno del minuscolo. Quindi potrebbero essere gestiti diversamente.

Tuttavia, funzionano se viene utilizzato il testo completo del titolo (con spazi e maiuscole). Quindi forse solo l’OP (può essere wikificato?) e le istruzioni nel TC devono essere modificati. O forse è necessaria una modifica principale per coerenza.

2 Mi Piace

Grazie Nathan. Sì, qualcosa è cambiato lì. Ci darò un’occhiata nel fine settimana.

1 Mi Piace

Ok, il componente funziona ancora correttamente, ma il formato del nome della classe del link personalizzato è cambiato, quindi ho dovuto apportare alcune modifiche alla documentazione del campo nel componente e nell’OP. Aggiorna il componente del tema.

A differenza delle sezioni del menu personalizzate, per i link personalizzati, i nomi nelle impostazioni del componente devono avere lo stesso formato maiuscolo/minuscolo dei loro nomi effettivi personalizzati. Ovviamente quelli predefiniti dovrebbero rimanere minuscoli solo per rendere le cose ancora più confuse lol. :grin:

Ad esempio, se voglio mostrare un link personalizzato specifico chiamato “GitHub Repo” solo per gli utenti connessi:

Inserirei lo stesso nome del link nell’impostazione show these links for logged-in only nel componente del tema:

Quindi, se hai link personalizzati nelle impostazioni di visualizzazione dei link - show these links for staff only e show these links for logged-in only - dovrai modificare le voci delle impostazioni del componente per corrispondere ai nomi dei link.

Nota che per le sezioni del menu personalizzate (non i link), la convenzione di denominazione è ancora la stessa di prima - è ancora in stile slug minuscolo (ad esempio, “Custom Menu Name” = custom-menu-name).

Grazie ancora per aver portato questa cosa alla mia attenzione @nathank :hugs:

A un certo punto voglio aggiungere la possibilità di riorganizzare tutte le sezioni del menu della barra laterale di navigazione, comprese quelle personalizzate, non solo quelle predefinite come fa attualmente. So come farlo con codice fisso, devo solo integrarlo per utilizzare impostazioni e variabili.

4 Mi Piace

Ciao Lilly,

Sto notando:

  • Non riesco a riordinare le sezioni indipendentemente dal fatto che utilizzi il nome visualizzato o lo slug
  • L’intera barra laterale viene nascosta agli ospiti anche quando non ho selezionato quella casella
1 Mi Piace

Non è possibile riordinare sezioni personalizzate con questo componente. Ho appena verificato la funzionalità di riordino e funziona come previsto.

Sì, posso confermare che la funzione di nascondimento per gli anonimi è rotta. La sistemerò oggi. grazie per avermelo fatto sapere.

dopo averla esaminata, la funzione di nascondimento per gli anonimi funziona come previsto, ma devi rimuovere gli esempi predefiniti che utilizzo nelle impostazioni per mostra queste sezioni solo per gli utenti registrati per dimostrare come funziona.

1 Mi Piace


Non viene visualizzato nessuno in modalità non connesso?

Dovrebbe essere un’impostazione di attivazione/disattivazione…

image

1 Mi Piace

vedi il mio post sopra il tuo :slight_smile:

[quote=“Lilly, post:15, topic:277687”]devi rimuovere gli esempi predefiniti che uso nelle impostazioni per mostra queste sezioni solo agli utenti registrati per dimostrare come funziona.
[/quote]

modifica: forse dovrei considerare di rimuoverli e usare solo lo screenshot per mostrare. :thinking:

4 Mi Piace

Ok, l’ho fatto ora e ho modificato l’OP. Usa gli screenshot come guida per i nomi delle sezioni e dei collegamenti predefiniti.

2 Mi Piace

Penso che il CSS per la sezione ⋮ Altro sia cambiato (btn-flat non c’è più)

Ho dovuto usare questo per nasconderlo per gli anonimi:

.anon button.sidebar-more-section-links-details-summary {
    display: none;
}

Ecco una PR:

3 Mi Piace

Questo è stato unito. Grazie ancora Nathan :hugs:

Ho anche corretto la funzione anonima per nascondere l’intera barra laterale, che era un po’ rotta.

3 Mi Piace

Ciao,

Sono bloccato mentre cerco di capire come usare questo bel componente. Sto cercando di fare in modo che gli utenti anonimi vedano solo “Diventa un membro” o qualcosa di simile.
Puoi aiutarmi?

Ti darò 3 modi diversi per farlo:

1. Usa questo componente del tema

Crea un menu laterale personalizzato con il link a /login e usa questa impostazione nel componente del tema:


2. Usa CSS in un tema o componente nuovo/esistente

Se vuoi solo aggiungere un link nella sezione superiore sotto “I miei post”, puoi aggiungere il link a /login tramite il link “Personalizza questa sezione” come segue. Ad esempio, se il link si chiama “Login o Iscriviti”:

Quindi vai a un tema o componente del tema e modifica l’html/css in questo modo:

Tieni presente che i riferimenti ai link in quella sezione superiore sono sensibili alle maiuscole:

.sidebar-section-link-wrapper[data-list-item-name="Login or Signup"] {
  display: none;
}

.anon .sidebar-section-link-wrapper[data-list-item-name="Login or Signup"] {
  display: block;
}

risultato nella vista in incognito / anonima:


3. Usa il seguente componente del tema

Sì, ho creato un componente del tema specifico molto tempo fa che fa questo. Fa anche il contrario: visualizza una sezione solo per i membri (utenti connessi).

3 Mi Piace

Capito. Grazie mille per la guida dettagliata.

2 Mi Piace