wpmu_signup_blog_notification

The timeline below displays how wordpress function wpmu_signup_blog_notification has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.2

/**
 * Sends a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog().
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|false $domain     Site domain, or false to prevent the email from sending.
     * @param string       $path       Site path.
     * @param string       $title      Site title.
     * @param string       $user_login User login name.
     * @param string       $user_email User email address.
     * @param string       $key        Activation key created in wpmu_signup_blog().
     * @param array        $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo Use *_url() API.
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ('' === $admin_email) {
        $admin_email = 'support@' . wp_parse_url(network_home_url(), PHP_URL_HOST);
    }
    $from_name = ('' !== get_site_option('site_name')) ? esc_html(get_site_option('site_name')) : 'WordPress';
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = $user && switch_to_user_locale($user->ID);
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your site, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 6.1

/**
 * Sends a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|false $domain     Site domain, or false to prevent the email from sending.
     * @param string       $path       Site path.
     * @param string       $title      Site title.
     * @param string       $user_login User login name.
     * @param string       $user_email User email address.
     * @param string       $key        Activation key created in wpmu_signup_blog().
     * @param array        $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo Use *_url() API.
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ('' === $admin_email) {
        $admin_email = 'support@' . wp_parse_url(network_home_url(), PHP_URL_HOST);
    }
    $from_name = ('' !== get_site_option('site_name')) ? esc_html(get_site_option('site_name')) : 'WordPress';
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your site, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 5.9

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|false $domain     Site domain, or false to prevent the email from sending.
     * @param string       $path       Site path.
     * @param string       $title      Site title.
     * @param string       $user_login User login name.
     * @param string       $user_email User email address.
     * @param string       $key        Activation key created in wpmu_signup_blog().
     * @param array        $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo Use *_url() API.
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ('' === $admin_email) {
        $admin_email = 'support@' . wp_parse_url(network_home_url(), PHP_URL_HOST);
    }
    $from_name = ('' !== get_site_option('site_name')) ? esc_html(get_site_option('site_name')) : 'WordPress';
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your site, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 5.7

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|false $domain     Site domain, or false to prevent the email from sending.
     * @param string       $path       Site path.
     * @param string       $title      Site title.
     * @param string       $user_login User login name.
     * @param string       $user_email User email address.
     * @param string       $key        Activation key created in wpmu_signup_blog().
     * @param array        $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo Use *_url() API.
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ('' === $admin_email) {
        $admin_email = 'support@' . wp_parse_url(network_home_url(), PHP_URL_HOST);
    }
    $from_name = ('' !== get_site_option('site_name')) ? esc_html(get_site_option('site_name')) : 'WordPress';
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your blog, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 5.5

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo Use *_url() API.
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ('' === $admin_email) {
        $admin_email = 'support@' . wp_parse_url(network_home_url(), PHP_URL_HOST);
    }
    $from_name = ('' !== get_site_option('site_name')) ? esc_html(get_site_option('site_name')) : 'WordPress';
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your blog, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 5.4

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo Use *_url() API.
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ('' == $admin_email) {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your blog, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 5.3

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo use *_url() API
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_email',
            /* translators: New site notification email. 1: Activation URL, 2: New site URL. */
            __("To activate your blog, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network title, 2: New site URL. */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 5.1

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
        // @todo use *_url() API
    }
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . 'Content-Type: text/plain; charset="' . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%1\$s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%2\$s"), $domain, $path, $title, $user_login, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network name, 2: New site URL */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 4.9

/**
 * Send a confirmation request email to a user when they sign up for a new site. The new site will not become active
 * until the confirmation link is clicked.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU (3.0.0)
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU (3.0.0)
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU (3.0.0)
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user_login, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU (3.0.0)
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network name, 2: New site URL */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 4.8

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       Optional. Signup meta data. By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user_login, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       Signup meta data. By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network name, 2: New site URL */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 4.7

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user_login The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user_login, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user_login User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user_login, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_network_id() != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $user = get_user_by('login', $user_login);
    $switched_locale = switch_to_locale(get_user_locale($user));
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user_login, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user_login User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters(
            'wpmu_signup_blog_notification_subject',
            /* translators: New site notification email subject. 1: Network name, 2: New site URL */
            _x('[%1$s] Activate %2$s', 'New site notification email subject'),
            $domain,
            $path,
            $title,
            $user_login,
            $user_email,
            $key,
            $meta
        ),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    if ($switched_locale) {
        restore_previous_locale();
    }
    return true;
}

WordPress Version: 4.6

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter {@see 'wpmu_signup_blog_notification'} to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter {@see 'wpmu_signup_blog_notification_email'} and
 * {@see 'wpmu_signup_blog_notification_subject'} to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user       The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user, $user_email, $key, $meta = array())
{
    /**
     * Filters whether to bypass the new site email notification.
     *
     * @since MU
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user       User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_site()->id != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $message = sprintf(
        /**
         * Filters the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filters the subject of the new blog notification email.
         *
         * @since MU
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_subject', __('[%1$s] Activate %2$s'), $domain, $path, $title, $user, $user_email, $key, $meta),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    return true;
}

WordPress Version: 4.3

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter 'wpmu_signup_blog_notification' to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter 'wpmu_signup_blog_notification_email' and
 * 'wpmu_signup_blog_notification_subject' to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain     The new blog domain.
 * @param string $path       The new blog path.
 * @param string $title      The site title.
 * @param string $user       The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key        The activation key created in wpmu_signup_blog()
 * @param array  $meta       By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user, $user_email, $key, $meta = array())
{
    /**
     * Filter whether to bypass the new site email notification.
     *
     * @since MU
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user       User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_site()->id != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $message = sprintf(
        /**
         * Filter the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filter the subject of the new blog notification email.
         *
         * @since MU
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_subject', __('[%1$s] Activate %2$s'), $domain, $path, $title, $user, $user_email, $key, $meta),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    return true;
}

WordPress Version: 3.9

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter 'wpmu_signup_blog_notification' to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter 'wpmu_signup_blog_notification_email' and
 * 'wpmu_signup_blog_notification_subject' to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain The new blog domain.
 * @param string $path The new blog path.
 * @param string $title The site title.
 * @param string $user The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key The activation key created in wpmu_signup_blog()
 * @param array $meta By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user, $user_email, $key, $meta = array())
{
    /**
     * Filter whether to bypass the new site email notification.
     *
     * @since MU
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user       User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_site()->id != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $message = sprintf(
        /**
         * Filter the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filter the subject of the new blog notification email.
         *
         * @since MU
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_subject', __('[%1$s] Activate %2$s'), $domain, $path, $title, $user, $user_email, $key, $meta),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers);
    return true;
}

WordPress Version: 3.8

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter 'wpmu_signup_blog_notification' to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter 'wpmu_signup_blog_notification_email' and
 * 'wpmu_signup_blog_notification_subject' to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain The new blog domain.
 * @param string $path The new blog path.
 * @param string $title The site title.
 * @param string $user The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key The activation key created in wpmu_signup_blog()
 * @param array $meta By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user, $user_email, $key, $meta = array())
{
    /**
     * Filter whether to bypass the new site email notification.
     *
     * @since MU
     *
     * @param string|bool $domain     Site domain.
     * @param string      $path       Site path.
     * @param string      $title      Site title.
     * @param string      $user       User login name.
     * @param string      $user_email User email address.
     * @param string      $key        Activation key created in wpmu_signup_blog().
     * @param array       $meta       By default, contains the requested privacy setting and lang_id.
     */
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || get_current_site()->id != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $message = sprintf(
        /**
         * Filter the message content of the new blog notification email.
         *
         * Content should be formatted for transmission via wp_mail().
         *
         * @since MU
         *
         * @param string $content    Content of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user, $user_email, $key, $meta),
        $activate_url,
        esc_url("http://{$domain}{$path}"),
        $key
    );
    // TODO: Don't hard code activation link.
    $subject = sprintf(
        /**
         * Filter the subject of the new blog notification email.
         *
         * @since MU
         *
         * @param string $subject    Subject of the notification email.
         * @param string $domain     Site domain.
         * @param string $path       Site path.
         * @param string $title      Site title.
         * @param string $user       User login name.
         * @param string $user_email User email address.
         * @param string $key        Activation key created in wpmu_signup_blog().
         * @param array  $meta       By default, contains the requested privacy setting and lang_id.
         */
        apply_filters('wpmu_signup_blog_notification_subject', __('[%1$s] Activate %2$s'), $domain, $path, $title, $user, $user_email, $key, $meta),
        $from_name,
        esc_url('http://' . $domain . $path)
    );
    wp_mail($user_email, $subject, $message, $message_headers);
    return true;
}

WordPress Version: 3.7

/**
 * Notify user of signup success.
 *
 * This is the notification function used when site registration
 * is enabled.
 *
 * Filter 'wpmu_signup_blog_notification' to bypass this function or
 * replace it with your own notification behavior.
 *
 * Filter 'wpmu_signup_blog_notification_email' and
 * 'wpmu_signup_blog_notification_subject' to change the content
 * and subject line of the email sent to newly registered users.
 *
 * @since MU
 *
 * @param string $domain The new blog domain.
 * @param string $path The new blog path.
 * @param string $title The site title.
 * @param string $user The user's login name.
 * @param string $user_email The user's email address.
 * @param string $key The activation key created in wpmu_signup_blog()
 * @param array $meta By default, contains the requested privacy setting and lang_id.
 * @return bool
 */
function wpmu_signup_blog_notification($domain, $path, $title, $user, $user_email, $key, $meta = array())
{
    global $current_site;
    if (!apply_filters('wpmu_signup_blog_notification', $domain, $path, $title, $user, $user_email, $key, $meta)) {
        return false;
    }
    // Send email with activation link.
    if (!is_subdomain_install() || $current_site->id != 1) {
        $activate_url = network_site_url("wp-activate.php?key={$key}");
    } else {
        $activate_url = "http://{$domain}{$path}wp-activate.php?key={$key}";
    }
    // @todo use *_url() API
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option('admin_email');
    if ($admin_email == '') {
        $admin_email = 'support@' . $_SERVER['SERVER_NAME'];
    }
    $from_name = (get_site_option('site_name') == '') ? 'WordPress' : esc_html(get_site_option('site_name'));
    $message_headers = "From: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
    $message = sprintf(apply_filters('wpmu_signup_blog_notification_email', __("To activate your blog, please click the following link:\n\n%s\n\nAfter you activate, you will receive *another email* with your login.\n\nAfter you activate, you can visit your site here:\n\n%s"), $domain, $path, $title, $user, $user_email, $key, $meta), $activate_url, esc_url("http://{$domain}{$path}"), $key);
    // TODO: Don't hard code activation link.
    $subject = sprintf(apply_filters('wpmu_signup_blog_notification_subject', __('[%1$s] Activate %2$s'), $domain, $path, $title, $user, $user_email, $key, $meta), $from_name, esc_url('http://' . $domain . $path));
    wp_mail($user_email, $subject, $message, $message_headers);
    return true;
}