Wie kann ich No-Disposable anwenden, wenn ich einen Benutzer programmatisch mit wp_insert_user () hinzufüge?

Wie kann ich ein No-Disposable-E-Mail-Plugin ausführen, wenn ich einen Benutzer programmatisch mit wp_insert_user () hinzufüge?

Ich meine, wie funktioniert das?

No Disposable Email

$random_password = wp_generate_password( 8, false ); $user_data = array( 'user_login' => $sanitized_user_login, 'user_pass' => wp_generate_password ( 7, false ), 'first_name' => $first_name, 'last_name' => $last_name, 'user_email' => $email, 'display_name' => $first_name . ' ' . $last_name, 'nickname' => $first_name . ' ' . $last_name, 'role' => 'TestDrive', 'city'=>$city, 'state'=>$state, 'country'=>$country ); $user_id = wp_insert_user($user_data); 

HIER, was für mich funktioniert hat:

  $errors = new WP_Error(); $check_disposable = no_disposable_email($errors, $sanitized_user_login, $email); $error_string = $check_disposable->get_error_message(); if (!$error_string)) { $user_id = wp_insert_user($user_data); } else { die("Please do not use disposable email for registering!"); } 

Solutions Collecting From Web of "Wie kann ich No-Disposable anwenden, wenn ich einen Benutzer programmatisch mit wp_insert_user () hinzufüge?"

Was das von Ihnen erwähnte Plugin tut, ist einen Filter auf registration_errors anzuwenden, der von einer function namens register_new_user . Die schnellste und einfachste Lösung wäre, diese function anstelle von wp_insert_user .

Wenn das nicht möglich ist oder Ihr Code-Design dies nicht zulässt, können Sie no_disposable_email immer direkt und vor wp_insert_user .

 $errors = new WP_Error(); $sanitized_user_login = 'login'; $user_email = 'email@example.com'; $check_disposable = no_disposable_email($errors, $sanitized_user_login, $user_email); If (!is_wp_error($check_disposable)) { // wp_insert_user } else { // whatever you need } 

Sehr einfaches Codebeispiel, aber Sie sollten anfangen.