• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer
WordPress core a2z

WordPress core a2z

WordPress core only

  • Home
  • Plugins
  • Blocks
  • Shortcodes
  • APIs
  • Classes
  • Files
  • Hooks
  • Sitemap
  • Blog
Home / APIs / wp_new_user_notification() – Email login credentials to a newly-registered user.

You appear to be a bot. Output may be restricted

Description

Email login credentials to a newly-registered user.

A new user registration notification is also sent to admin email.

Usage

wp_new_user_notification( $user_id, $deprecated, $notify );

Parameters

$user_id
( int ) required – User ID.
$deprecated
( null ) optional – Not used (argument deprecated).
$notify
( string ) optional – Optional. Type of notification that should happen. Accepts 'admin' or an empty string (admin only), 'user', or 'both' (admin and user). Default empty.

Returns

void

Source

File name: wordpress/wp-includes/pluggable.php
Lines:

1 to 100 of 120
  function wp_new_user_notification( $user_id, $deprecated = null, $notify = '' ) {
    if ( null !== $deprecated ) {
      _deprecated_argument( wp_new_user_notification, '4.3.1' );
    }

    // Accepts only 'user', 'admin' , 'both' or default '' as $notify.
    if ( ! in_array( $notify, array( 'user', 'admin', 'both', '' ), true ) ) {
      return;
    }

    $user = get_userdata( $user_id );

    // The blogname option is escaped with esc_html() on the way into the database in sanitize_option().
    // We want to reverse this for the plain text arena of emails.
    $blogname = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );

    if ( 'user' !== $notify ) {
      $switched_locale = switch_to_locale( get_locale() );

      /* translators: %s: Site title. */
      $message = sprintf( __( 'New user registration on your site %s:' ), $blogname ) . "\r\n\r\n";
      /* translators: %s: User login. */
      $message .= sprintf( __( 'Username: %s' ), $user->user_login ) . "\r\n\r\n";
      /* translators: %s: User email address. */
      $message .= sprintf( __( 'Email: %s' ), $user->user_email ) . "\r\n";

      $wp_new_user_notification_email_admin = array(
        'to'      => get_option( 'admin_email' ),
        /* translators: New user registration notification email subject. %s: Site title. */
        'subject' => __( '[%s] New User Registration' ),
        'message' => $message,
        'headers' => '',
      );

      
/**
 * Filters the contents of the new user notification email sent to the site admin.
 *
 * @since 4.9.0
 *
 * @param array   $wp_new_user_notification_email_admin {
 *     Used to build wp_mail().
 *
 *     @type string $to      The intended recipient - site admin email address.
 *     @type string $subject The subject of the email.
 *     @type string $message The body of the email.
 *     @type string $headers The headers of the email.
 * }
 * @param WP_User $user     User object for new user.
 * @param string  $blogname The site title.
 */
      $wp_new_user_notification_email_admin = apply_filters( 'wp_new_user_notification_email_admin', $wp_new_user_notification_email_admin, $user, $blogname );

      wp_mail(
        $wp_new_user_notification_email_admin['to'],
        wp_specialchars_decode( sprintf( $wp_new_user_notification_email_admin['subject'], $blogname ) ),
        $wp_new_user_notification_email_admin['message'],
        $wp_new_user_notification_email_admin['headers']
      );

      if ( $switched_locale ) {
        restore_previous_locale();
      }
    }

    // `$deprecated` was pre-4.3 `$plaintext_pass`. An empty `$plaintext_pass` didn't sent a user notification.
    if ( 'admin' === $notify || ( empty( $deprecated ) && empty( $notify ) ) ) {
      return;
    }

    $key = get_password_reset_key( $user );
    if ( is_wp_error( $key ) ) {
      return;
    }

    $switched_locale = switch_to_locale( get_user_locale( $user ) );

    /* translators: %s: User login. */
    $message  = sprintf( __( 'Username: %s' ), $user->user_login ) . "\r\n\r\n";
    $message .= __( 'To set your password, visit the following address:' ) . "\r\n\r\n";
    $message .= network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user->user_login ), 'login' ) . "\r\n\r\n";

    $message .= wp_login_url() . "\r\n";

    $wp_new_user_notification_email = array(
      'to'      => $user->user_email,
      /* translators: Login details notification email subject. %s: Site title. */
      'subject' => __( '[%s] Login Details' ),
      'message' => $message,
      'headers' => '',
    );

    
/**
 * Filters the contents of the new user notification email sent to the new user.
 *
 * @since 4.9.0
 *
 * @param array   $wp_new_user_notification_email {
 *     Used to build wp_mail().
 *
 *     @type string $to      The intended recipient - New user email address.
 
[1] [2] Next »

 View on GitHub View on Trac

Published: 25th November 2019 | Last updated: 2nd April 2020

Primary Sidebar

Information

Function name: wp_new_user_notification
Plugin ref: WordPress
Version: 5.6
Sourcefile: wp-includes/pluggable.php
File ref: wp-includes/pluggable.php
Deprecated?: No
API Letters: N,U,W

Footer

WP-a2z
WordPress core a2z
WordPress core only
WordPress 5.6
WordPress a2z
WordPress core a2z
Genesis Theme Framework a2z
Jetpack a2z
WordPress develop tests
Easy Digital Downloads a2z
WooCommerce a2z
Yoast SEO a2z
WordPress Blocks

Site:  core.wp-a2z.org
© Copyright WP-a2z 2014-2021. All rights reserved.


Website designed and developed by Herb Miller
Proudly powered by WordPress and oik plugins

  • Home
  • Blog
  • Sitemap
  • Sites