Non sono ancora sicuro del motivo per cui ho eliminato il supporto per le homepage predefinite e anonime prima. Le ho rimesse a posto.
Ora, se esiste una custom_default_homepage, questa viene utilizzata a meno che non ci sia una corrispondenza di gruppo. Se c’è una anon_page e l’utente è anonimo, viene utilizzata quella.
Non sono riuscito a capire come o quando impostare la pagina mobile (è per utenti anonimi? tutti gli utenti? sovrascrive la pagina predefinita? la mappa dei gruppi?), quindi l’ho eliminata. Se stai usando quella pagina mobile, dimmi cosa pensi che dovrebbe sovrascrivere (penso forse di impostarla come pagina predefinita se sono su mobile, ma se c’è una pagina di gruppo, allora usa quella? Ancora non è chiaro cosa fare per anonimo vs. connesso - immagino che forse ci debbano essere versioni mobili per tutte?).
Ecco il codice:
let url = null;
if (settings.custom_default_homepage) {
url = settings.custom_default_homepage.replace(/^\/+/g, "");
}
if (user) {
if (user.primary_group_name && settings.group_page_map) {
let groupMap = settings.group_page_map.replace(",", ":").split("|");
const mapEntry = groupMap.find((value) =>
RegExp(user.primary_group_name).test(value)
);
if (mapEntry) {
url = mapEntry.split(":")[1].replace(/^\/+/g, "");
}
}
} else if (settings.anon_page) {
url = settings.anon_page.replace(/^\/+/g, "");
}
E poi cambia la homepage solo se url ha un valore.
Questo componente del tema è inteso a reindirizzare chiunque nel gruppo alla homepage al momento del login o usando i link? L’ho installato, e il logo reindirizza alla pagina selezionata ma al momento del login l’utente viene comunque reindirizzato alla pagina predefinita /latest. Se questo gestisce quel reindirizzamento al login, devo avere ancora qualcosa impostato in modo errato.
Il mio obiettivo è che tutti gli utenti siano inclusi in un gruppo predefinito e che tutti vengano reindirizzati a una pagina alternativa al momento del login.
Deve essere il loro gruppo Primario affinché questo TC si attivi. Questo è un comportamento previsto, in modo che non ci siano conflitti quando un utente è membro di più di un gruppo con un reindirizzamento.
Il trust level 0 è considerato un gruppo valido? Sarebbe questa l’impostazione corretta per la Group Page Map? trust_level_0:/discourse-ai/ai-bot/conversations. Questa è l’impostazione attuale che ho impostato.
No, i gruppi di livello di fiducia non possono essere usati in quanto non possono essere resi Primari. Potresti aggirare il problema usando il plugin dei gruppi dinamici per creare un gruppo specchio, se questo è vitale per te.
Innanzitutto, grazie a tutti per il vostro intervento e aiuto! È molto apprezzato!
Questo mi lascia perplesso.
Ho installato questo plugin senza problemi e ho impostato trust_level_0 nelle impostazioni con “rendi questo gruppo primario”. Tutti i membri del sito sono stati aggiunti al gruppo. Tutti gli utenti mostrano ora questo come gruppo primario.
Nelle impostazioni del componente Homepage personalizzata per gruppi, ecco cosa ho impostato.
Accedendo alla pagina, gli utenti nel gruppo primario Community-Core atterrano ancora su /latest. Se cambio la Pagina Anonima in qualcosa di diverso da /latest al momento dell’accesso, gli utenti verranno mostrati qualunque pagina sia mostrata in quel campo, quindi questa è la reindirizzamento che si sta verificando.
Sto usando il tema Canvas Screen e sono passato al predefinito per testare con lo stesso risultato.
Ho anche disabilitato tutti i componenti del tema e i plugin per vedere se questo aiutava, senza successo.
Sto pensando che o mi manca qualcosa che potrebbe essere evidente ad altri, o potrebbe esserci un problema con il componente.
Quando fai clic con il pulsante destro del mouse sul tuo sito e selezioni “Ispeziona” puoi vedere ciò che pfaffman sta chiedendo.
Ad esempio, vedo questo nella mia pagina di amministrazione utente (/admin/users/{user_id}/{username})
Questo è ciò che intendevo, ma ora ricordo/vedo che il componente ottiene il gruppo primario dal modello utente, non dal CSS.
Quindi, forse trova un utente nel percorso utente dell’amministratore e aggiungi .json all’URL. Quindi controlla qual è il loro gruppo primario e cerca (nel browser) primary_group: true e verifica che il nome corrisponda esattamente al caso che hai utilizzato nella configurazione del tema.
Il nome del gruppo principale è infatti Community-Core, con le lettere maiuscole e il trattino, che è esattamente ciò che ho inserito nelle impostazioni del componente del tema.
Grazie Jay, ho provato a ricaricare. Ho provato numerosi aggiustamenti agli URL e simili. Carica decisamente la pagina Anon. Se lo cambio, va a quella pagina e mostra anche /latest nell’URL del browser.
Ho cercato e presumo che non ci sia un altro modo per reindirizzare semplicemente. Era più facile con i siti PHP. Sono ancora un principiante con Discourse.