switch_to_blog ($ blog_id); все еще пишут на главный блог

Я создаю новые блоги ( wpmu_create_blog ) в for loop ,

То, что я пытаюсь достичь сейчас, – вставить сообщения в каждый созданный блог с помощью switch_to_blog .

Проблема заключается в том, что wp_insert_post все еще записывает на главный сайт (который не нужен), а также записывается в каждый новый блог (который требуется).

Например, есть 3 новых сайта, которые необходимо создать, поэтому цикл for выполняет итерацию 3 раза.

Это то, что создается:

 Main Site: Subsite 1 - Page 1 Subsite 1 - Page 1 (created from the for loop) Subsite 2 - Page 1 (created from the for loop) Subsite 2 - Page 1 Subsite 3 - Page 1 (created from the for loop) Subsite 1 - Page 1 (created from the for loop) Subsite 3 - Page 1 Subsite 2 - Page 1 (created from the for loop) Subsite 3 - Page 1 (created from the for loop) Main Subsite (Intentional, hence why the function is using wpmu_new_blog): Subsite 1: Page 1 Subsite 2: Page 1 Subsite 3: Page 1 

Я не уверен, что вызывает проблему.

 <?php /* ----------------------------------------------------------------------------- * * Create New Sites w/ wpmu_create_blog and insert posts w/ switch_to_blog * ----------------------------------------------------------------------------- */ function wpmu_app_sites( $blog_id, $user_id ) { // Used to get the primary site URL global $current_site; # Load WordPress barebones define( 'WP_USE_THEMES', false ); require( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' ); # Multisite domain $main_site = $current_site->domain; # Type of Multisite $subdomain_install = true; $path = '/'; // Get User ID $user_name = $_POST['user_name']; $user = get_user_by('login', $user_name); $user_id = $user->ID; $siteList = $_POST['bootstrap']['siteList']; // Repeater List if ( !empty($siteList) ) { $count = count($siteList); // Get the count of how many rows are in the list // For each item (ie. row), run through this loop until there is no more rows ($key++ increment) for( $key = 1; $key < $count; $key++ ) { $siteId = $_POST['bootstrap']['trackList'][$key]['trackId']; // App ID specific to that row (ie $key) $siteName = trim($_POST['bootstrap']['trackList'][$key]['trackName']); // App Name specific to that row (ie $key) $post_title = ucwords($siteName); $domain = "$siteId.$main_site"; $blog_id = wpmu_create_blog($domain, $path, $post_title, $user_id); switch_to_blog($blog_id); $post = array( 'post_name' => sanitize_title( $post_title ), // Post Slug 'post_status' => 'publish', 'post_title' => $post_title, // Post Title 'post_type' => 'page' // Custom Post Type ); $post_id = wp_insert_post( $post ); // Use the WordPress default wp_insert_post function $metaDescription = 'Meta Descrption'; update_post_meta($post_id, 'trackId', $siteId, true); // Set the App ID with the $siteId update_post_meta($post_id, 'trackName', $post_title, true); // Set the App Name with the $siteName update_post_meta($post_id, 'metaDescription', $metaDescription, true); }; }; return; // End the function restore_current_blog(); } add_action('wpmu_new_blog', 'wpmu_app_sites', 10, 2); ?>