Pagina iniziale personalizzata per i gruppi

Overview

When installed and added to the active theme, this theme component enables you to control the ‘homepage’, allowing it to be different from the set of pages Discourse allows by default, as well as having different groups have different “homepages” (e.g., group members care only or mostly about a particular category). This can be for all users, anon (non-logged in), mobile users, or according to a user’s primary group. Initially developed by @pfaffman. See User-specific Discourse home page.

Use-cases:

  1. You want something other than the ‘normal’ homepage
  2. You want a different homepage for Anonymous users
  3. You want a different homepage for Mobile users
  4. You have a group of folk only interested in using a small slice of your instance. They want to only see their specific category.
  5. Temporarily redirect a group of your punters to a special event or the like.
  6. Have different landing pages for different groups.

Settings

custom default homepage

Allows you to set a global custom homepage.

anon page

This enables you to use a specified page for those who aren’t logged into your site. Over-rides the global one above.

mobile homepage

As per Force Mobile Homepage this allows you to set a different homepage for mobile users. This will override the options chosen above.

group page map

This allows for multiple entries. Each entry should be of the format group_name:path , where group_name is the group slug (not the group Full Name ) and the path is the desired home page (e.g., “/c/great-category/4”).

Ensure that the target users have the specified group denoted as their primary group and you are away. If the theme setting or the user primary group is changed, a reload will be required to have the change take effect.

:warning: The users with a specified group as primary will not be able to reach your ‘normal’ homepage unless you ensure that there is a way for them to do that (such as the native sidebar functionality)

Known Issue - limited to relative URLs

And that doesn’t include Page Publishing, unfortunately. However, you can workaround this by creating a permalink that will redirect to the external site and point to that permalink.

  • @pfaffman tested this with a permalink at /go-google that redirects to https://google.com and something like group-name:/go-google
  • you create Permalinks via the admin settings /admin/customize/permalinks
42 Mi Piace

Questo è un cambia gruppo di gioco! :crazy_face:

Ottimo lavoro! TC piuttosto potente…

Abbiamo apportato alcune modifiche nella fase di PR, affrontando questi punti:

E aggiungendo anche il controllo della homepage mobile, se si desidera che sia diversa (come da Force Mobile Homepage).

Ciò ne aumenta significativamente la potenza, quindi speriamo che ti piaccia.

6 Mi Piace

Ciao!! È fantastico!! :slight_smile:
Grazie mille, questo è effettivamente importante per il mio caso (caso d’uso 1).
Devo chiedere, riguardo a “Gli utenti con un gruppo specificato come primario non saranno in grado di raggiungere la tua homepage ‘normale’”, cosa intendi con “fornire attivamente un modo per farlo”?
Inoltre, in linea con questo concetto, sarebbe utile mostrare nella homepage un ordine specifico delle categorie a seconda del gruppo a cui appartiene l’utente. Ad esempio, mostrare la loro categoria in cima e tutto il resto sotto. Pensi che sia possibile? (se non lo è già?).

Significa che qualsiasi homepage imposterai nelle impostazioni del sito verrà sovrascritta. Quindi, se vuoi che gli utenti possano raggiungerla, dovrai assicurarti che ci sia un link per arrivarci… In qualche modo.

Non riesco a immaginare come funzionerebbe (forse ho una cattiva immaginazione :man_shrugging:). Il caso d’uso che mi viene in mente fa sì che gli utenti abbiano una categoria diversa impostata come home se appartengono a un gruppo. Come un sito di auto potrebbe permetterti di scegliere il gruppo Ford come tua homepage.

Se vuoi cose diverse disponibili per gruppi diversi, penso che lo faresti avendo categorie predefinite silenziate.

1 Mi Piace

Ciao Jay!
Grazie per la tua risposta :slight_smile:
Diciamo che vorrei avere diverse categorie “fissate” in alto a seconda del gruppo a cui appartiene un utente. Voglio dire, ogni utente diverso vedrebbe una categoria “fissata” diversa. Non voglio nascondere le altre categorie all’utente, solo rendere facilmente visibile e prontamente disponibile quella che utilizzerà di più, fin dalla homepage (se possibile!).
(ovviamente, non sto “esigendo” nulla qui, sto solo chiedendo se è possibile con le impostazioni/componenti disponibili)

1 Mi Piace

Ciao @lisandro_iaffar

Ho avuto esattamente lo stesso caso d’uso che ho pubblicato qui: Showcased Categories - #18 by jrgong

Nel mio caso, ho impostato la categoria del cliente del mio inserzionista come homepage con questo TC, ma l’hanno trovato confuso e mi hanno chiesto di rimuoverlo di nuovo. Pertanto, penso che il TC delle categorie in vetrina con tale modifica sarebbe la soluzione perfetta.

3 Mi Piace

Ciao @jrgong! :slight_smile:
Grazie mille per avermi indicato quell’argomento! E sì! Sarebbe semplicemente perfetto! Mi sposto lì per sostenere l’idea :muscle:
Grazie ancora!

Ho appena inviato un aggiornamento che gestisce il preLoadStore, che causava la visualizzazione di argomenti errati al primo caricamento.

5 Mi Piace

Ciao Jay, ho notato un errore dopo il mio ultimo aggiornamento di Discourse:

1 Mi Piace

Sei sicuro che sia la versione più recente su GitHub? (Non il tuo fork o una versione statica/locale?) Ho appena eseguito un aggiornamento e funziona. Inoltre, guardando il codice, api viene utilizzato solo in un punto:

        const user = api.getCurrentUser();

e questo si trova all’interno di un blocco che definisce api.

È strano. L’ho comunque rimosso da quell’istanza poiché era in eccesso. E sembra funzionare bene dopo l’aggiornamento in un’altra istanza. Strano. Grazie per averci dato un’occhiata!

Hai idea di come interagisca con la barra laterale? Devo provarlo perché sembra che il problema di dover tornare alla home page del forum sia stato risolto da esso.

1 Mi Piace

Non l’ho testato, ma non riesco a immaginare perché no. Tieni presente che potrei non avere una buona immaginazione.

1 Mi Piace

Lo sto testando ora, ma ho due commenti:

  1. Il percorso anonimo non funziona per noi: richiede lo stesso formato della mappa di gruppo?
  2. Sarebbe fantastico se ci fosse un’impostazione predefinita che si applicasse a tutti.

1 Mi Piace

Hmm. Pensavo di averlo testato sull’elenco dei commit.

In effetti. Suppongo che le persone che ne avevano bisogno non avessero bisogno di passare a una home page non supportata.

Cercherò di dare un’occhiata domani, anche se potrebbe essere la prossima settimana.

1 Mi Piace

Per tua informazione, ha funzionato per me ieri mentre ci giocavo (avevo tag/featured/ al suo interno)

Funziona bene per me. Ha solo bisogno del percorso relativo.

Ma ho avuto lo stesso problema tuo finché non ho effettivamente aggiunto il componente al tema! L’hai fatto?

Sì, ho pensato che dovesse essere aggiunto. Ecco qui:

2 Mi Piace

Sì, lo stesso tema funziona bene quando si è connessi, solo non per gli anonimi. E per essere sicuri: l’URL relativo deve iniziare con un /? Chiedo perché Jammy ha usato tag/featured/ mentre io uso /c/artwork/8.

Ho risolto - è stato un mio errore.

Perfetto, grazie! Non mi risulta ancora come aggiornamento - dovrebbe?

1 Mi Piace

È nel mio fork. Puoi installarlo direttamente da qui se vuoi finché Jay non lo unisce:

Funziona con o senza /

TRA L’ALTRO

Il modo in cui l’hai configurato non funzionerà poiché gli utenti non possono avere nessuno dei gruppi di trust_level come gruppo primario.

Pensandoci - è aggiunto al tema predefinito del sito (quello che usano gli anonimi)? Mi sono bloccato aggiungendo un componente al mio tema ‘dev’ ma non al tema predefinito.

2 Mi Piace

Sim, encontrei o erro - estava relacionado a isso :man_facepalming:

2 Mi Piace