• About WordPress
    • About WordPress
    • WordPress.org
    • Documentation
    • Support
    • Feedback
  • Log In
  • Register

WordPress.org

  • Showcase
  • Learn
  • Themes
  • Plugins
  • Mobile
  • Support
    • Documentation
    • Forums
  • Get Involved
    • Five for the Future
  • About
  • Blog
  • Hosting
  • Get WordPress

Code Reference

Skip to content
Filter by type:
Search
Browse: Home / Reference / Functions / signup_another_blog()

signup_another_blog( string $blogname = '', string $blog_title = '', WP_Error|string $errors = '' )

Allow returning users to sign up for another site

Contents

  • Parameters
  • Source
  • Related
    • Uses
    • Used By
  • Changelog
  • User Contributed Notes

Parameters #Parameters

$blogname

(string) (Optional) The new site name

Default value: ''

$blog_title

(string) (Optional) The new site title.

Default value: ''

$errors

(WP_Error|string) (Optional) A WP_Error object containing existing errors. Defaults to empty string.

Default value: ''


Top ↑

Source #Source

File: wp-signup.php

function signup_another_blog( $blogname = '', $blog_title = '', $errors = '' ) {
	$current_user = wp_get_current_user();

	if ( ! is_wp_error( $errors ) ) {
		$errors = new WP_Error();
	}

	$signup_defaults = array(
		'blogname'   => $blogname,
		'blog_title' => $blog_title,
		'errors'     => $errors,
	);

	/**
	 * Filters the default site sign-up variables.
	 *
	 * @since 3.0.0
	 *
	 * @param array $signup_defaults {
	 *     An array of default site sign-up variables.
	 *
	 *     @type string   $blogname   The site blogname.
	 *     @type string   $blog_title The site title.
	 *     @type WP_Error $errors     A WP_Error object possibly containing 'blogname' or 'blog_title' errors.
	 * }
	 */
	$filtered_results = apply_filters( 'signup_another_blog_init', $signup_defaults );

	$blogname   = $filtered_results['blogname'];
	$blog_title = $filtered_results['blog_title'];
	$errors     = $filtered_results['errors'];

	/* translators: %s: Network title. */
	echo '<h2>' . sprintf( __( 'Get <em>another</em> %s site in seconds' ), get_network()->site_name ) . '</h2>';

	if ( $errors->has_errors() ) {
		echo '<p>' . __( 'There was a problem, please correct the form below and try again.' ) . '</p>';
	}
	?>
	<p>
		<?php
		printf(
			/* translators: %s: Current user's display name. */
			__( 'Welcome back, %s. By filling out the form below, you can <strong>add another site to your account</strong>. There is no limit to the number of sites you can have, so create to your heart&#8217;s content, but write responsibly!' ),
			$current_user->display_name
		);
		?>
	</p>

	<?php
	$blogs = get_blogs_of_user( $current_user->ID );
	if ( ! empty( $blogs ) ) {
		?>

			<p><?php _e( 'Sites you are already a member of:' ); ?></p>
			<ul>
				<?php
				foreach ( $blogs as $blog ) {
					$home_url = get_home_url( $blog->userblog_id );
					echo '<li><a href="' . esc_url( $home_url ) . '">' . $home_url . '</a></li>';
				}
				?>
			</ul>
	<?php } ?>

	<p><?php _e( 'If you&#8217;re not going to use a great site domain, leave it for a new user. Now have at it!' ); ?></p>
	<form id="setupform" method="post" action="wp-signup.php">
		<input type="hidden" name="stage" value="gimmeanotherblog" />
		<?php
		/**
		 * Hidden sign-up form fields output when creating another site or user.
		 *
		 * @since MU (3.0.0)
		 *
		 * @param string $context A string describing the steps of the sign-up process. The value can be
		 *                        'create-another-site', 'validate-user', or 'validate-site'.
		 */
		do_action( 'signup_hidden_fields', 'create-another-site' );
		?>
		<?php show_blog_form( $blogname, $blog_title, $errors ); ?>
		<p class="submit"><input type="submit" name="submit" class="submit" value="<?php esc_attr_e( 'Create Site' ); ?>" /></p>
	</form>
	<?php
}

Expand full source code Collapse full source code View on Trac


Top ↑

Related #Related

Uses #Uses

Uses
Uses Description
wp-includes/ms-network.php: get_network()

Retrieves network data given a network ID or network object.

wp-signup.php: signup_another_blog_init

Filters the default site sign-up variables.

wp-signup.php: signup_hidden_fields

Hidden sign-up form fields output when creating another site or user.

wp-signup.php: show_blog_form()

Generates and displays the Signup and Create Site forms

wp-includes/l10n.php: __()

Retrieve the translation of $text.

wp-includes/l10n.php: _e()

Display translated text.

wp-includes/l10n.php: esc_attr_e()

Display translated text that has been escaped for safe use in an attribute.

wp-includes/formatting.php: esc_url()

Checks and cleans a URL.

wp-includes/pluggable.php: wp_get_current_user()

Retrieve the current user object.

wp-includes/link-template.php: get_home_url()

Retrieves the URL for a given site where the front end is accessible.

wp-includes/plugin.php: apply_filters()

Calls the callback functions that have been added to a filter hook.

wp-includes/plugin.php: do_action()

Execute functions hooked on a specific action hook.

wp-includes/user.php: get_blogs_of_user()

Get the sites a user belongs to.

wp-includes/load.php: is_wp_error()

Checks whether the given variable is a WordPress Error.

wp-includes/class-wp-error.php: WP_Error::__construct()

Initializes the error.

Show 10 more uses Hide more uses

Top ↑

Used By #Used By

Used By
Used By Description
wp-signup.php: validate_another_blog_signup()

Validate a new site signup for an existing user.


Top ↑

Changelog #Changelog

Changelog
Version Description
MU (3.0.0) Introduced.

Top ↑

User Contributed Notes #User Contributed Notes

You must log in before being able to contribute a note or feedback.

  • About
  • Blog
  • Hosting
  • Donate
  • Support
  • Developers
  • Get Involved
  • Learn
  • Showcase
  • Plugins
  • Themes
  • WordCamp
  • WordPress.TV
  • BuddyPress
  • bbPress
  • WordPress.com
  • Matt
  • Privacy
  • Public Code
  • @WordPress
  • WordPress

Code is Poetry.

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.