Questo componente ti consente di reindirizzare gli utenti ovunque desideri dopo l’accesso e ti permette anche di inserire un banner di benvenuto nella pagina dei gruppi ( /g ).
È costruito con entrambe le parti indipendenti, quindi puoi reindirizzare dove vuoi, o usarlo solo per inserire un banner nella pagina dei gruppi. Il comportamento predefinito è reindirizzare i nuovi utenti alla pagina dei gruppi dove un banner di benvenuto li incoraggia a unirsi ai gruppi per aiutarli a interagire con la tua community.
Puoi anche utilizzare questo componente per reindirizzare gli utenti con un certo livello di fiducia a una pagina all’accesso, o gli utenti che si sono uniti a meno di un numero di gruppi che selezioni.
First Login Redirect (Reindirizzamento Primo Accesso)
Un componente tema di Discourse che reindirizza gli utenti senza iscrizioni a gruppi a una pagina personalizzata e visualizza un banner di benvenuto personalizzabile.
Caratteristiche
Reindirizzamento Intelligente - Reindirizza gli utenti senza iscrizioni a gruppi a una pagina personalizzata all’accesso
Banner Personalizzabile - Banner di benvenuto colorato sulla pagina dei gruppi
Completamente Configurabile - Abilita/disabilita reindirizzamento e banner in modo indipendente
Logica basata sui Gruppi - Interrompe il reindirizzamento una volta che l’utente si unisce a qualsiasi gruppo
Consapevolezza del Livello di Fiducia - La visibilità del banner può essere limitata in base al livello di fiducia
Sfumatura Arcobaleno - Sfondo con sfumatura a 6 colori accattivante (con interruttore per colore solido)
Responsive per Mobile - Il banner si adatta agli schermi mobili
Installazione
-
Nella console di amministrazione di Discourse, vai su Personalizza → Temi → Componenti e fai clic su Installa
-
Scegli Da un repository Git e incolla:
https://github.com/focallocal/first-login-redirect -
Una volta installato, aggiungi il componente al tuo tema attivo
Come Funziona
Logica di Reindirizzamento
- Controlla se l’utente è membro di qualche gruppo
- Rileva quando naviga verso la homepage
- Lo reindirizza all’URL configurato (predefinito:
/g) - Smette di reindirizzare una volta che si unisce a qualsiasi gruppo
- Può essere disabilitato indipendentemente dal banner
Banner di Benvenuto
- Viene visualizzato sulla pagina indice dei gruppi (
/g) per impostazione predefinita - La visibilità è controllata dalle impostazioni del livello di fiducia
- Può essere disabilitato indipendentemente dal reindirizzamento
- Viene nascosto automaticamente una volta che l’utente raggiunge il Livello di Fiducia 1
- Posizionato in cima all’elenco dei gruppi utilizzando l’outlet
before-groups-index
Personalizzazione
Impostazioni Tema (Pannello Admin)
Tutta la personalizzazione può essere effettuata dal pannello di amministrazione di Discourse senza modificare il codice!
- Vai su Admin → Personalizza → Temi
- Fai clic sul tuo tema che include questo componente
- Vai su Impostazioni e trova la sezione “First Login Redirect”
Impostazioni Disponibili:
Impostazioni di Reindirizzamento:
- Abilita Reindirizzamento: Attiva/disattiva la funzione di reindirizzamento (predefinito: true)
- Gruppi Minimi Richiesti: Quanti gruppi creati dall’utente devono essere uniti prima che il reindirizzamento si interrompa (predefinito: 1)
- I gruppi automatici (come trust_level_0, everyone) non contano
- URL di Reindirizzamento: Dove inviare gli utenti senza gruppi (predefinito:
/g)- Esempi:
/g(gruppi),/categories,/about,/latest
- Esempi:
Impostazioni Banner:
- Mostra Banner: Attiva/disattiva il banner (predefinito: true)
- Livello di Fiducia Minimo: Livello di fiducia minimo per vedere il banner (0-4, predefinito: 0)
- Livello di Fiducia Massimo: Livello di fiducia massimo per vedere il banner (0-4, predefinito: 4)
- Intestazione Banner: Testo principale grande
- Sottotitolo Banner: Testo esplicativo più piccolo
Tipografia:
- Dimensione Carattere Intestazione: Dimensione dell’intestazione principale (predefinito: 2.5em)
- Dimensione Carattere Sottotitolo: Dimensione del sottotitolo (predefinito: 1.25em)
- Ombra Testo Abilitata: Attiva/disattiva l’ombra del testo per la leggibilità
- Bagliore Testo Abilitato: Attiva/disattiva l’effetto bagliore esterno
Colori:
- Usa Sfumatura: Abilita/disabilita la sfumatura (se disabilitata, utilizza colore solido)
- Colore Sfumatura 1-6: Personalizza ogni colore nella sfumatura
- Predefinito: Rosa → Arancione → Giallo → Verde → Ciano
- Imposta “Usa Sfumatura” su OFF per colore solido usando Colore 1
Layout:
- Padding Banner: Spazio all’interno del banner (predefinito: 3rem 2rem)
- Raggio Bordo: Arrotondamento degli angoli (predefinito: 12px, usa 0 per quadrato)
Esempi
Mostra solo per TL0 (nuovi utenti):
Imposta Livello di Fiducia Minimo = 0, Livello di Fiducia Massimo = 0
Mostra per tutti tranne gli amministratori:
Imposta Livello di Fiducia Minimo = 0, Livello di Fiducia Massimo = 3
Banner a Colore Solido:
Disattiva “Usa Sfumatura” e imposta Colore 1 sul colore desiderato (es. #FF5722 per arancione).
Sfumatura Bicolore:
Attiva “Usa Sfumatura” e imposta i colori 1-3 su un colore, i colori 4-6 su un altro.
Testo Più Grande:
Imposta l’intestazione su 3em e il sottotitolo su 1.5em.
Nessun Effetto:
Disabilita sia “Ombra Testo” che “Bagliore Testo” per testo piatto.
Disabilita Reindirizzamento (Solo Banner)
Elimina o commenta il file:
javascripts/discourse/api-initializers/first-login-redirect.js
Modifica Requisito Livello di Fiducia
In entrambi i file di inizializzazione, cambia:
currentUser.trust_level === 0
in:
currentUser.trust_level <= 1 // TL0 e TL1
Dettagli Tecnici
- Versione API: 1.8.0 (API Discourse moderna)
- Tipo Componente: Componente Glimmer con tag template
- Plugin Outlet:
before-groups-index - Compatibilità: Discourse 2.8.0+
Risoluzione dei Problemi
D: Il reindirizzamento non funziona
R: Cancella la sessionStorage del tuo browser e prova con un account Trust Level 0 appena creato
D: Il banner non viene visualizzato durante i test
R: Verifica di essere sulla rotta /g e di aver effettuato l’accesso come utente TL0, oppure controlla i valori impostati nell’amministrazione. Controlla la console del browser per eventuali errori.
D: Loop di reindirizzamento
R: Il controllo della sessionStorage dovrebbe prevenirlo. Se si verifica, cancella la cache del browser e la sessionStorage.
Licenza
MIT — Public Happiness Movement
