Come utilizzare la stessa email per più utenti
Ho un multisito WordPress molto grande. Mi è stata fatta una richiesta per abilitare l'opzione che consenta a più utenti di utilizzare la stessa email. Ho trovato un plugin "Allow Multiple Accounts" che però non funziona correttamente. Dovrei trovare qualche altra soluzione per questo problema. So che potrei usare qualcosa come aggiungere +testo a ogni email, così che appaia diversa a WordPress. Avete qualche altra soluzione che possa essere implementata?
Puoi utilizzare il filtro wpmu_validate_user_signup
per rimuovere l'errore e poi definire WP_IMPORTING
per saltare il controllo email_exist()
nella funzione wp_insert_user()
:
add_filter('wpmu_validate_user_signup', 'skip_email_exist');
function skip_email_exist($result){
if(isset($result['errors']->errors['user_email']) && ($key = array_search(__('Spiacenti, questo indirizzo email è già in uso!'), $result['errors']->errors['user_email'])) !== false) {
unset($result['errors']->errors['user_email'][$key]);
if (empty($result['errors']->errors['user_email'])) unset($result['errors']->errors['user_email']);
}
define( 'WP_IMPORTING', 'SKIP_EMAIL_EXIST' );
return $result;
}
AGGIORNAMENTO: per una configurazione non Multi-site prova questo codice:
add_filter('pre_user_email', 'skip_email_exist');
function skip_email_exist($user_email){
define( 'WP_IMPORTING', 'SKIP_EMAIL_EXIST' );
return $user_email;
}

@Guillochon Non vedo alcun cambiamento in WP 3.5 che potrebbe far sì che questo codice non funzioni. E questo è per una configurazione MULTI-SITE, stai testando su una configurazione WP MU?

Il mio errore, stavo provando una configurazione per un singolo sito. Il plugin "Multiple Accounts" per siti singoli non funziona più, quindi stavo cercando delle alternative.

@Guillochon Prova la mia soluzione aggiornata sopra per una configurazione a sito singolo.

Cosa succede con le notifiche per password perse nelle configurazioni multisito? Come verrà gestito questo aspetto?

@Tiny Giant Studios Ho appena fatto un test con due account che hanno lo stesso indirizzo email, ho richiesto il recupero della password usando l'email e ho ricevuto un solo messaggio relativo al primo account creato. Quindi in questo caso sarebbe meglio usare il nome utente per reimpostare la password.

Puoi utilizzare la funzionalità degli alias di Gmail:
- Primo account WordPress: email+1@gmail.com
- Secondo account WordPress: email+2@gmail.com
- Terzo account WordPress: email+3@gmail.com
e così via.
Tutte le email verranno recapitate allo stesso indirizzo (email@gmail.com).
All'interno di Gmail, puoi distinguere le email utilizzando un filtro o una ricerca.
Ad esempio, cercando to:email+1@gmail.com
mostrerà solo le email relative al primo account WordPress.
Questa soluzione non dovrebbe interrompere il flusso di "Reimposta password" in WordPress.
