1

I'm looking to register users without requiring confirmation of their emails (and even better, no password when they register). Basically, I want them to subscribe their mails using wp registration process and then redirect to a page of my choice.

I know I can do it with CF7, or a newsletter plugin or whatever, but I actually need to use the default registration process because it connects to another plugin which uses it, and the UX flow is as follows:

user enter mails --> user gets redirected to thank you page with a ref code (provided by plugin). 

It's as simple as this, yet couldn't find the answer and I was searching for hours.

Any help really appreciated!

2
  • 2
    Using the default registration system for this is a VERY bad idea. Your site would fill with spammer accounts very very quickly. Why not just create a simple form that directs to provided plugin with logic code? Commented May 27, 2015 at 0:52
  • @Digitalchild Maybe this is private site in local area network
    – basil
    Commented Jun 21, 2019 at 7:47

3 Answers 3

0

Well there is a function called wp_new_user_notification() which is pluggable you can alter it to stop user registration email:

if ( ! function_exists( 'wp_new_user_notification' ) ) {
    function wp_new_user_notification( $user_id, $plaintext_pass = '' ) {
        return false; // because we don't need to send email.
    }
}
0

You can register user with different plugins. For example, plugin User Registration https://wordpress.org/plugins/user-registration/ does not require any e-mail confirmation.

If you want to write a plugin by yourself there is a function wp_create_user() - https://developer.wordpress.org/reference/functions/wp_create_user/ - it will help you to create a user in DB with login,password and e-mail. You can add your rules for registration. Another function register_new_user() - https://developer.wordpress.org/reference/functions/register_new_user/ - will generate password in system.

0

As one other answer noted, you can alter the wp_new_user_notification() function since it is pluggable. But it also has a filter hook wp_send_new_user_notification_to_user in it to stop the notification email from going out at all So if you use the filter instead, you don't have to alter the function (in case it gets used by other processes). You can use WP's __return_false() function to simply return a false boolean to the filter and stop the confirmation email to the user from going out:

add_filter( 'wp_send_new_user_notification_to_user', '__return_false' );

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.