問題描述
我有一個非常大的多點。我有一個請求來啓用多個用户可以使用相同電子郵件的選項。我發現一個插件 「允許多個帳户」 無法正常工作。我應該找出一些其他解決方案。我知道我可以使用像每個電子郵件一樣添加+ sometext,所以它會顯示與 Wordpress 不同。你有其他解決方案嗎?
最佳解決方案
您可以使用 wpmu_validate_user_signup 過濾器來刪除錯誤,然後定義 WP_IMPORTING,以跳過 email_exist() wp_insert_user()功能中的 email_exist()檢查:
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;
}
更新:對於非 Multi-site 設置,請嘗試以下代碼:
add_filter('pre_user_email', 'skip_email_exist');
function skip_email_exist($user_email){
define( 'WP_IMPORTING', 'SKIP_EMAIL_EXIST' );
return $user_email;
}
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。