วิธีใช้อีเมลเดียวกันสำหรับผู้ใช้หลายคน


14

ฉันมีไซต์ที่มีขนาดใหญ่มาก และฉันได้รับคำขอให้เปิดใช้งานตัวเลือกที่ผู้ใช้หลายคนสามารถใช้อีเมลเดียวกันได้ ฉันพบปลั๊กอิน "อนุญาตหลายบัญชี" ซึ่งทำงานไม่ถูกต้อง ฉันควรหาวิธีแก้ปัญหาอื่นสำหรับเรื่องนั้น ฉันรู้ว่าฉันสามารถใช้บางอย่างเช่นการเพิ่ม + บางครั้งในอีเมลทุกฉบับดังนั้นมันจึงแสดงให้เห็นถึงความแตกต่างของ Wordpress คุณมีวิธีแก้ปัญหาอื่นที่สามารถทำได้ที่นี่หรือไม่?


5
คุณต้องระวังสิ่งนี้ หากคุณใช้งานได้และหากคุณพยายามใช้อีเมลเดียวกันสำหรับบุคคลหลาย ๆ คนบุคคลใด ๆ เหล่านั้นจะสามารถรีเซ็ตรหัสผ่านสำหรับบัญชีใด ๆ หรือทั้งหมดที่ใช้อีเมลที่ใช้ร่วมกันได้ ที่อยู่อีเมลนั้นเป็นส่วนหนึ่งของระบบรักษาความปลอดภัย
s_ha_dum

ใช่ฉันรู้ว่า แต่ฉันยังคงค้นหาวิธีแก้ปัญหานี้
Boban

1
Anwer ของ Parham เรียบร้อยดี แต่ฉันอยากจะชี้ให้เห็นว่าที่อยู่อีเมลไม่จำเป็นต้องเป็นของจริงดังนั้นคุณสามารถสร้างบัญชีด้วยที่อยู่อีเมลปลอม ผู้ใช้สามารถเข้าไปและเปลี่ยนแปลงได้ในภายหลังหากต้องการ สิ่งนี้มีข้อดีด้านความปลอดภัยและป้องกันปัญหาเกี่ยวกับปลั๊กอินและบางส่วนของคอร์ WordPress ที่ถือว่ามีชื่อผู้ใช้หนึ่งชื่อต่อหนึ่งที่อยู่อีเมล
wp-overwatch.com

สิ่งที่ฉันต้องการคือ Mr Me ฉันแค่ต้องการมันเพื่อการทดสอบ
LegendLength

คำตอบ:


15

คุณสามารถใช้wpmu_validate_user_signupตัวกรองเพื่อลบข้อผิดพลาดจากนั้นกำหนดWP_IMPORTINGเพียงเพื่อข้ามฟังก์ชันemail_exist()เช็คอิน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;
}

อัปเดต : สำหรับการตั้งค่าที่ไม่ใช่หลายไซต์ลองใช้รหัสนี้:

add_filter('pre_user_email', 'skip_email_exist');
function skip_email_exist($user_email){
    define( 'WP_IMPORTING', 'SKIP_EMAIL_EXIST' );
    return $user_email;
}

ฉันคิดว่านี่เป็นคำตอบที่ถูก ทำเครื่องหมายว่าถูกต้อง ขอบคุณ!
Boban

1
สิ่งนี้ไม่ทำงานใน Wordpress 3.5
Guillochon

@Guillochon ฉันไม่เห็นการเปลี่ยนแปลงใด ๆ ใน WP 3.5 ที่จะทำให้รหัสนี้ไม่ทำงาน และนี่สำหรับการตั้งค่าหลายไซต์คุณกำลังทดสอบการตั้งค่า WP MU หรือไม่
Parham

ความผิดพลาดของฉันฉันพยายามติดตั้งไซต์เดียว ปลั๊กอิน "หลายบัญชี" สำหรับไซต์เดียวไม่ทำงานอีกต่อไปดังนั้นฉันจึงมองหาทางเลือกอื่น
Guillochon

1
จะเกิดอะไรขึ้นกับการแจ้งเตือนรหัสผ่านที่หายไปในการตั้งค่าแบบหลายไซต์ สิ่งนี้จะได้รับการจัดการอย่างไร
สตูดิโอยักษ์เล็ก ๆ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.