Cum să folosești același email pentru mai mulți utilizatori

10 dec. 2012, 13:33:23
Vizualizări: 18.1K
Voturi: 15

Am un site multisite foarte mare. Am primit o cerere să activez opțiunea ca mai mulți utilizatori să poată folosi același email. Am găsit un plugin "Allow Multiple Accounts" care nu funcționează corespunzător. Ar trebui să găsesc o altă soluție pentru asta. Știu că aș putea folosi ceva de genul adăugării +text la fiecare email, astfel încât să apară diferit în WordPress. Aveți vreo altă soluție care ar putea fi implementată?

4
Comentarii

Trebuie să fii atent cu asta. Dacă ai reușit să faci asta să funcționeze și încerci să folosești același email pentru mai multe persoane distincte, atunci oricare dintre acele persoane ar putea reseta parola pentru oricare sau toate conturile care folosesc acel email comun. Acea adresă de email face parte din sistemul de securitate.

s_ha_dum s_ha_dum
10 dec. 2012 18:18:10

da, știu asta, dar tot caut această soluție

Bob Bob
10 dec. 2012 21:19:18

Răspunsul lui Parham este destul de ingenios, dar aș dori să subliniez și că adresele de email nu trebuie să fie reale, așa că poți crea conturi cu adrese de email false. Utilizatorul poate să le schimbe ulterior dacă dorește. Aceasta are avantaje din punct de vedere al securității și previne problemele cu plugin-urile și părți din nucleul WordPress care presupun că există un singur nume de utilizator per adresă de email.

wp-overwatch.com wp-overwatch.com
1 sept. 2017 01:12:36

Exact ceea ce aveam nevoie, domnule Me. Vreau să-l folosesc doar în scopuri de testare.

LegendLength LegendLength
22 sept. 2018 19:44:23
Toate răspunsurile la întrebare 2
8
16

Puteți utiliza filtrul wpmu_validate_user_signup pentru a elimina eroarea și apoi definiți WP_IMPORTING pentru a omite verificarea email_exist() în funcția 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(__('Sorry, that email address is already used!'), $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;
}

ACTUALIZARE: pentru o configurare non Multi-site, încercați acest cod:

add_filter('pre_user_email', 'skip_email_exist');
function skip_email_exist($user_email){
    define( 'WP_IMPORTING', 'SKIP_EMAIL_EXIST' );
    return $user_email;
}
11 dec. 2012 10:59:18
Comentarii

Cred că acesta este răspunsul corect. Marcat ca corect. Mulțumesc!

Bob Bob
11 dec. 2012 15:23:24

Această soluție nu funcționează în WordPress 3.5.

Guillochon Guillochon
29 ian. 2013 20:37:16

@Guillochon Nu văd nicio modificare în WP 3.5 care să facă acest cod să nu funcționeze. Și aceasta este pentru o configurare MULTI-SITE, tu testezi pe o configurare WP MU?

Parham Parham
29 ian. 2013 21:38:35

Greșeala mea, încercam să configurez pentru un singur site. Pluginul "Multiple Accounts" pentru site-uri unice nu mai funcționează, așa că căutam alternative.

Guillochon Guillochon
30 ian. 2013 01:46:18

@Guillochon Încearcă soluția mea actualizată de mai sus pentru configurația pe un singur site.

Parham Parham
30 ian. 2013 08:09:58

Ce se întâmplă cu notificările de parolă pierdută în configurațiile multisite? Cum va fi gestionat acest aspect?

Tiny Giant Studios Tiny Giant Studios
2 mai 2013 15:06:55

@Tiny Giant Studios Tocmai am făcut un test cu două conturi care au aceeași adresă de email, am solicitat recuperarea parolei folosind email-ul și am primit un singur mesaj care se referea la primul cont creat. Deci, în acest caz, ar fi mai bine să folosiți numele de utilizator pentru a reseta o parolă.

mike23 mike23
6 nov. 2013 16:46:27

Aceasta nu permite crearea a mai mult de 2 conturi cu aceeași adresă de email.

Steve Steve
20 ian. 2017 03:55:10
Arată celelalte 3 comentarii
0

Poți utiliza funcționalitatea de alias din Gmail:

  • Primul cont WordPress: email+1@gmail.com
  • Al doilea cont WordPress: email+2@gmail.com
  • Al treilea cont WordPress: email+3@gmail.com

și așa mai departe.

Toate emailurile vor fi livrate la aceeași adresă (email@gmail.com).

În Gmail, poți distinge emailurile folosind un filtru sau o căutare. De exemplu, căutând to:email+1@gmail.com va afișa doar emailurile asociate primului cont WordPress.

Această soluție nu ar trebui să afecteze procesul de "Resetare parolă" din WordPress.

30 apr. 2020 14:32:37