Mi lascio una nota qui relativa a https://meta.discourse.org/t/manage-group-membership-in-discourse-with-wp-discourse-sso/74724#restricting-access-to-discourse-when-a-membership-doesnt-exist-4. Se l’opzione WP Discourse Crea o sincronizza utenti Discourse al login è abilitata, gli account Discourse verranno creati automaticamente per tutti gli utenti del sito WordPress, anche se viene loro impedito di accedere a Discourse tramite il metodo descritto nell’OP. I dettagli su come impedire la creazione automatica di account per gli utenti che non dispongono del livello di appartenenza appropriato si trovano nella seconda parte di questo post: How to prevent some WP users from being able to login to Discourse - #2 by simon.
In pratica:
add_filter( 'wpdc_bypass_sync_sso', 'wpdc_custom_bypass_sync_sso', 10, 3 );
function wpdc_custom_bypass_sync_sso( $bypass_sync, $user_id, $user ) {
if ( /* Una condizione che restituisce true se l'utente non soddisfa il requisito di appartenenza */ ) {
$bypass_sync = true;
}
return $bypass_sync;
}
Mi sto impostando un promemoria per aggiornare l’OP con quei dettagli.