Пример #1
0
 function wp_new_user_notification($user_id, $deprecated = NULL, $notify = '')
 {
     /***
      * WPSS Redefined: Copied from pluggable.php in WordPress core and added filters.
      * Modified in 1.9.5.7 to add compatibility for WP 4.3+ and maintain backwards compatibility for earlier WP versions.
      * Modified in 1.9.6.2 for WP 4.3.1+
      ***/
     if (rs_wpss_is_wp_ver('4.3.1') && $deprecated !== NULL) {
         _deprecated_argument(__FUNCTION__, '4.3.1');
     }
     $user = get_userdata($user_id);
     $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
     $admin_message = sprintf(__('New user registration on your site %s:'), $blogname) . "\r\n\r\n";
     $admin_message .= sprintf(__('Username: %s'), $user->user_login) . "\r\n\r\n";
     $admin_message .= sprintf(__('E-mail: %s'), $user->user_email) . "\r\n";
     $admin_message = apply_filters('wpss_signup_notification_text_admin', $admin_message, $user_id, $user);
     WP_SpamShield::mail(get_option('admin_email'), sprintf(__('[%s] New User Registration'), $blogname), $admin_message);
     if (rs_wpss_is_wp_ver('4.3') && !rs_wpss_is_wp_ver('4.3.1')) {
         /* 4.3 - $deprecated is '$notify' */
         $notify = $deprecated;
     }
     if ('admin' === $notify || empty($notify)) {
         return;
     }
     global $wpdb, $wp_hasher;
     $key = wp_generate_password(20, false);
     do_action('retrieve_password_key', $user->user_login, $key);
     if (empty($wp_hasher)) {
         require_once ABSPATH . WPINC . '/class-phpass.php';
         $wp_hasher = new PasswordHash(8, true);
     }
     $hashed = time() . ':' . $wp_hasher->HashPassword($key);
     $wpdb->update($wpdb->users, array('user_activation_key' => $hashed), array('user_login' => $user->user_login));
     $user_message = sprintf(__('Username: %s'), $user->user_login) . "\r\n";
     /* 4.3+ */
     $user_message .= __('To set your password, visit the following address:') . "\r\n\r\n";
     $user_message .= '<' . network_site_url("wp-login.php?action=rp&key={$key}&login="******">\r\n\r\n";
     $user_subject_text = 'Your username and password info';
     $user_message .= wp_login_url() . "\r\n";
     $user_message = apply_filters('wpss_signup_notification_text_user', $user_message, $user_id, $user);
     WP_SpamShield::mail($user->user_email, sprintf(__('[%s] ' . $user_subject_text), $blogname), $user_message);
 }