signup_user

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

WordPress Version: 6.1

/**
 * Shows a form for a visitor to sign up for a new user account.
 *
 * @since MU (3.0.0)
 *
 * @global string $active_signup String that returns registration type. The value can be
 *                               'all', 'none', 'blog', or 'user'.
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2>
	<?php 
    /* translators: %s: Name of the network. */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?>
	</h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<?php 
    if ('blog' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ('user' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<fieldset class="signup-options">
				<legend><?php 
        _e('Create a site or only a username:');
        ?></legend>
				<p class="wp-signup-radio-buttons">
					<span class="wp-signup-radio-button">
						<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
						<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
					</span>
					<span class="wp-signup-radio-button">
						<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
						<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
					</span>
				</p>
			</fieldset>
		<?php 
    }
    ?>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 5.9

/**
 * Shows a form for a visitor to sign up for a new user account.
 *
 * @since MU (3.0.0)
 *
 * @global string $active_signup String that returns registration type. The value can be
 *                               'all', 'none', 'blog', or 'user'.
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2>
	<?php 
    /* translators: %s: Name of the network. */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?>
	</h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ('blog' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ('user' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 5.6

/**
 * Shows a form for a visitor to sign up for a new user account.
 *
 * @since MU (3.0.0)
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2>
	<?php 
    /* translators: %s: Name of the network. */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?>
	</h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ('blog' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ('user' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 5.3

/**
 * Setup the new user signup process
 *
 * @since MU (3.0.0)
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2>
	<?php 
    /* translators: %s: Name of the network. */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?>
	</h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ('blog' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ('user' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 5.1

/**
 * Setup the new user signup process
 *
 * @since MU (3.0.0)
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2>
	<?php 
    /* translators: %s: name of the network */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?>
	</h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ('blog' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ('user' === $active_signup) {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 4.9

/**
 * Setup the new user signup process
 *
 * @since MU (3.0.0)
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    /* translators: %s: name of the network */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 4.7

/**
 * Setup the new user signup process
 *
 * @since MU
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    /* translators: %s: name of the network */
    printf(__('Get your own %s account in seconds'), get_network()->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 4.6

/**
 * Setup the new user signup process
 *
 * @since MU
 *
 * @param string          $user_name  The username.
 * @param string          $user_email The user's email.
 * @param WP_Error|string $errors     A WP_Error object containing existing errors. Defaults to empty string.
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filters the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string   $user_name  The user username.
     *     @type string   $user_email The user email address.
     *     @type WP_Error $errors     A WP_Error object with possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    /* translators: %s: name of the network */
    printf(__('Get your own %s account in seconds'), get_current_site()->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 4.1

/**
 * Setup the new user signup process
 *
 * @since MU
 *
 * @param string $user_name The username
 * @param string $user_email The user's email
 * @param array $errors
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filter the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string $user_name  The user username.
     *     @type string $user_email The user email address.
     *     @type array  $errors     An array of possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    printf(__('Get your own %s account in seconds'), get_current_site()->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 4.0

/**
 * Setup the new user signup process
 *
 * @since MU
 *
 * @uses apply_filters() filter $filtered_results
 * @uses show_user_form() to display the user registration form
 * @param string $user_name The username
 * @param string $user_email The user's email
 * @param array $errors
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filter the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string $user_name  The user username.
     *     @type string $user_email The user email address.
     *     @type array  $errors     An array of possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    printf(__('Get your own %s account in seconds'), get_current_site()->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php" novalidate="novalidate">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 3.8

/**
 * Setup the new user signup process
 *
 * @since MU
 *
 * @uses apply_filters() filter $filtered_results
 * @uses show_user_form() to display the user registration form
 * @param string $user_name The username
 * @param string $user_email The user's email
 * @param array $errors
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filter the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string $user_name  The user username.
     *     @type string $user_email The user email address.
     *     @type array  $errors     An array of possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    printf(__('Get your own %s account in seconds'), get_current_site()->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}

WordPress Version: 3.7

/**
 * Setup the new user signup process
 *
 * @since MU
 *
 * @uses apply_filters() filter $filtered_results
 * @uses show_user_form() to display the user registration form
 * @param string $user_name The username
 * @param string $user_email The user's email
 * @param array $errors
 */
function signup_user($user_name = '', $user_email = '', $errors = '')
{
    global $current_site, $active_signup;
    if (!is_wp_error($errors)) {
        $errors = new WP_Error();
    }
    $signup_for = isset($_POST['signup_for']) ? esc_html($_POST['signup_for']) : 'blog';
    $signup_user_defaults = array('user_name' => $user_name, 'user_email' => $user_email, 'errors' => $errors);
    /**
     * Filter the default user variables used on the user sign-up form.
     *
     * @since 3.0.0
     *
     * @param array $signup_user_defaults {
     *     An array of default user variables.
     *
     *     @type string $user_name  The user username.
     *     @type string $user_email The user email address.
     *     @type array  $errors     An array of possible errors relevant to the sign-up user.
     * }
     */
    $filtered_results = apply_filters('signup_user_init', $signup_user_defaults);
    $user_name = $filtered_results['user_name'];
    $user_email = $filtered_results['user_email'];
    $errors = $filtered_results['errors'];
    ?>

	<h2><?php 
    printf(__('Get your own %s account in seconds'), $current_site->site_name);
    ?></h2>
	<form id="setupform" method="post" action="wp-signup.php">
		<input type="hidden" name="stage" value="validate-user-signup" />
		<?php 
    /** This action is documented in wp-signup.php */
    do_action('signup_hidden_fields', 'validate-user');
    ?>
		<?php 
    show_user_form($user_name, $user_email, $errors);
    ?>

		<p>
		<?php 
    if ($active_signup == 'blog') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="blog" />
		<?php 
    } elseif ($active_signup == 'user') {
        ?>
			<input id="signupblog" type="hidden" name="signup_for" value="user" />
		<?php 
    } else {
        ?>
			<input id="signupblog" type="radio" name="signup_for" value="blog" <?php 
        checked($signup_for, 'blog');
        ?> />
			<label class="checkbox" for="signupblog"><?php 
        _e('Gimme a site!');
        ?></label>
			<br />
			<input id="signupuser" type="radio" name="signup_for" value="user" <?php 
        checked($signup_for, 'user');
        ?> />
			<label class="checkbox" for="signupuser"><?php 
        _e('Just a username, please.');
        ?></label>
		<?php 
    }
    ?>
		</p>

		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php 
    esc_attr_e('Next');
    ?>" /></p>
	</form>
	<?php 
}