How to dynamically create a new site in Multisite using a PHP script?

How to create a sub site in a Multisite WordPress installation using a PHP script?
I read about wpmu_create_blog() , but I don't understand how to use this.

I get this error:

Fatal error: function call undefined wpmu_create_blog ()

How to solve this?

+4
source share
1 answer

The part you missed is in this Q & A: Creating a New Blog Using PHP . To summarize the example, configure the domain and type of Multisite. For testing purposes only, do not leave this file on your real server.

 <?php # Load WordPress barebones define( 'WP_USE_THEMES', false ); require( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' ); # Multisite domain $main_site = 'example.com'; # Type of Multisite $subdomain_install = false; # URL param activated if( isset( $_GET['new-site'] ) ) { # Create a new user $rand_number = rand( 1, 2000 ); $username = 'user-' . $rand_number; $password = 'fake-password'; // $password = wp_generate_password( 12, false ); $email = " email+$rand_number@example.com "; $user_id = wpmu_create_user( $username, $password, $email ); // wp_new_user_notification( $user_id, $password ); # Create site if( $subdomain_install ) { $newdomain = "{$_GET['new-site']}.$main_site"; $path = '/'; } else { $newdomain = $main_site; $path = "/{$_GET['new-site']}/"; } $title = $_GET['new-site']; $blog_id = wpmu_create_blog( $newdomain, $path, $title, $user_id , array( 'public' => 1 ) ); echo "New blog with ID = $blog_id"; } else echo 'Add to the URL: <b><tt>?new-site=NAME_OF_THE_SITE</tt></b>'; 
+5
source

Source: https://habr.com/ru/post/1502428/


All Articles