Incorpora la registrazione di Discourse in una pagina WP e aggiungi automaticamente il nuovo utente a un Gruppo specifico?

Sto cercando di permettere a un certo gruppo di persone di registrarsi sul mio Discourse. La mia preferenza sarebbe la seguente:

  1. Visitare la pagina di WordPress o di Discourse per la registrazione, chiedendo nome utente, email e password (se necessario; è possibile anche crearla automaticamente)
  2. L’utente viene aggiunto a Discourse e, inoltre, inserito in un Gruppo

È possibile farlo senza utilizzare Memberful?

Potresti ottenere questo risultato utilizzando il tuo sito WordPress come provider di Single Sign-On (SSO) per il tuo sito Discourse. Il plugin WP Discourse dispone di un’opzione “SSO Provider” che può essere utilizzata per configurarlo.

La parte più complessa consiste nell’aggiungere gli utenti ai gruppi di Discourse. Per farlo con il plugin WP Discourse, dovrai aggiungere del codice al tuo sito WordPress. In questo forum sono disponibili esempi di codice che possiamo indicarti per aggiungere gli utenti ai gruppi, ma hai bisogno di un modo per determinare a quali gruppi di Discourse dovrebbero essere assegnati gli utenti di WordPress. Un approccio possibile è installare un plugin di gestione delle iscrizioni sul tuo sito WordPress e poi aggiungere gli utenti ai gruppi di Discourse in base al loro livello di iscrizione su WordPress.

Se desideri che gli utenti si registrino e vengano aggiunti ai gruppi di Discourse senza dover aggiungere codice personalizzato, puoi valutare il plugin Discourse Patreon. Anche Memberful è un’ottima opzione.

Vuoi qualcosa come

if ( class_exists( '\WPDiscourse\Discourse\Discourse' ) ) {
    add_filter( 'wpdc_sso_params', 'wpdc_custom_sso_params', 10, 2 );
}
function wpdc_custom_sso_params( $params, $user ) {
    $groups = get_group_list_for_current_user();
    if ( strlen($groups) > 0 ) {
        $params['add_groups'] = $groups;
    }
    return $params;
}

dovrebbe funzionare. get_group_list_for_current_user è lasciato come esercizio per il lettore. :wink:

Se questo non ti aiuta e hai un budget, puoi chiedere in Marketplace o contattarmi.