Accesso base al forum/integrazione con sito WordPress

Ho un sito di membership WordPress gestito con Memberpress per controllare gli accessi.
Abbiamo creato un forum Discourse e installato il plugin wp-discourse, collegandoli tra loro.

Tuttavia, non trovo alcuna documentazione che spieghi come il forum viene solitamente accessibile dal sito WordPress. Non voglio che gli utenti vengano reindirizzati al forum dopo il login, ma suppongo di poter aggiungere un link nel menu, con un testo informativo per chi non è loggato e, per gli utenti loggati con il livello di membership appropriato, un altro testo e il link al sito del forum.

Apprezzerei molto un vostro parere in merito. Ho notato che nelle varie impostazioni del plugin sembra che i post possano essere incorporati nel sito WordPress, ma non trovo una spiegazione chiara di come questo possa apparire.

Grazie!
Evelyn

Hai visto questo argomento?:


Ho seguito le parti che sembrano applicabili. Non riesco ancora a trovare informazioni su come collegare il forum a un sito web… Immagino si tratti semplicemente di creare un link nel menu.
Ho provato a configurarlo in modo che il sito WordPress funga da SSO per il forum, ma devo fare ulteriori test perché, quando accedo al forum con un utente che ha un account con lo stesso nome utente sul forum, mi chiede ancora di effettuare il login sul forum.
Sarebbe utile vedere un esempio di un sito web che si collega a un forum Discourse.
Grazie!
Evelyn

Il nostro blog principale è un esempio:

Esatto. Dovrai solo modificare il tuo sito per includere un link al forum in un punto appropriato.

Se utilizzi il plugin per pubblicare post da WordPress a Discourse, puoi aggiungere un link al relativo argomento di Discourse a ogni post di WordPress. Per farlo, seleziona “Abilita commenti Discourse” nella scheda Impostazioni commenti del plugin. Quando selezioni questa opzione, avrai la possibilità di scegliere se visualizzare i commenti di Discourse sotto il post o mostrare solo un link ai commenti.

Quando l’SSO è abilitato, i link agli argomenti di Discourse verranno impostati di default come link di accesso SSO. Ciò significa che quando un utente clicca sul link, verrà automaticamente portato attraverso il processo di accesso SSO e poi reindirizzato all’argomento di Discourse come utente connesso.

Puoi aggiungere un link al tuo forum al menu del tuo sito WordPress. Quando l’SSO è abilitato, puoi strutturare il link in modo che gli utenti vengano portati attraverso il processo di accesso SSO quando cliccano sul link. Consulta Create a DiscourseConnect login link per i dettagli su come strutturare il link. Per aggiungere un link in questa forma su WordPress, devi aggiungere un “Link personalizzato” al menu:

L’esempio nello screenshot effettuerà l’accesso degli utenti a Discourse e li reindirizzerà alla homepage del forum quando cliccheranno sul link “forum”. Per creare un link che reindirizzi gli utenti a una pagina specifica del tuo forum, aggiungi un parametro di query return_path all’URL. Ad esempio: http://localhost:3000/session/sso?return_path=http://localhost:3000/c/fun.

Ciao Simon,
Grazie! È molto utile.

Esiste una documentazione che spiega questo?

http://localhost:3000/session/sso

Se volessi utilizzare il mio URL reale (sottodominio) per il forum invece di quello localhost, funzionerebbe comunque?

Non prevediamo di utilizzare i post di WordPress per accedere a Discourse, ma solo di inserire un link che porti i membri al forum: vogliamo però che siano già autenticati quando vi arrivano.

Quindi, in questo caso, tutte le impostazioni relative a commenti e post, ecc., non saranno applicabili? Dobbiamo semplicemente proteggere l’accesso al forum tramite il nostro plugin per la gestione degli abbonamenti. Non sarà necessario sincronizzare commenti e post.

Evelyn

Oh, scusa! Ho appena cliccato sul link che hai condiviso. Ho letto troppo in fretta :slight_smile:
Evelyn

L’esempio che ho fornito non era chiaro come avrebbe potuto esserlo. Lo modificherò questa settimana. Il dominio localhost:3000 è il dominio del mio sito di sviluppo locale. Dovresti sostituire quel dominio con il dominio effettivo del tuo forum. Ad esempio, https://forum.esempio.com/session/sso

Se è così, non è necessario configurare alcuna delle impostazioni relative ai Commenti o alla Pubblicazione.

Quando SSO è abilitato, tutti gli utenti del tuo sito WordPress potranno accedere al tuo forum Discourse. Se hai utenti su WordPress che non dovrebbero essere autorizzati a creare account su Discourse, dovrai aggiungere del codice a un plugin o al tema del tuo sito. L’argomento fornisce dettagli su come farlo: How to prevent some WP users from being able to login to Discourse.

Ciao Simon,

Ho impostato questo link.

https://forum.richarddolanmembers.com/session/sso?return_path=https://forum.richarddolanmembers.com/

Voglio semplicemente che reindirizzi al livello principale. In seguito potrei scegliere una pagina specifica di Discourse.

Ho assicurato di lasciare la casella spuntata per consentire l’accesso diretto.
Attualmente, quando accedo dal sito WordPress o dal forum stesso, vengo reindirizzato al sito WordPress.

Aiuto :slight_smile:
Evelyn

Ciao,
Ho provato a disattivare l’anteprima in modo che tu potessi effettivamente vedere il link..
Sto cercando di modificarlo per renderlo visibile.

*2ttps://forum.richarddolanmembers.com/session/sso?return_path=https://forum.richarddolanmembers.com/

Evelyn

Ciao Simon,
Stiamo notando che gli utenti con privilegi di amministratore su Discourse non vedono tali permessi quando accedono tramite SSO. Uno dei miei collaboratori riesce ad accedere con il processo SSO, ma non vede i suoi privilegi di amministratore. Io non riesco ad accedere affatto; sto ancora cercando di capire il motivo.
Esiste un modo per permettere agli amministratori di accedere direttamente a Discourse al di fuori di SSO, così da poter gestire il sito? O per garantire che abbiano tutti i loro privilegi completi su Discourse quando accedono tramite il login SSO del sito web?

Grazie!
Evelyn

Sì, se ti sei bloccato fuori da Discourse durante la configurazione dell’SSO, vai su http://forum.example.com/u/admin-login. (Sostituisci forum.example.com con il dominio del tuo forum.) Inserisci il tuo indirizzo email nel modulo presente nella pagina e clicca sul link che riceverai via email.

Una volta tornato ad accedere al sito, controlla se è stato creato un nuovo account per lui. Per accedere a un account esistente su Discourse, devi utilizzare lo stesso indirizzo email su WordPress che usi per l’account Discourse.

Dai un’occhiata a Debug and fixing common DiscourseConnect issues per vedere se ti offre qualche indizio per risolvere i tuoi problemi SSO. I problemi che stai riscontrando sono probabilmente legati a quanto descritto nella sezione ‘Risoluzione dei problemi di accesso SSO con require_activation’ di quel topic. Non credo che il tuo sito stia utilizzando il sistema di registrazione predefinito di WordPress, quindi i nuovi account creati dopo l’installazione del plugin WP Discourse avranno l’flag require_activation impostato su true nel payload SSO.