populate_site_meta

函数
populate_site_meta ( $site_id, $meta = array() )
参数
  • (int) $site_id Site ID to populate meta for.
    Required:
  • (array) $meta Optional. Custom meta $key => $value pairs to use. Default empty array.
    Required:
    Default: array()
定义位置
相关方法
update_site_metapopulate_network_metadelete_site_metaget_site_metaupdate_user_meta
引入
5.1.0
弃用
-

populate_site_meta: 这个函数用来为一个站点填充指定的元数据。它需要两个参数:要填充的站点的ID,以及代表要填充的元数据的键/值对数组。

创建WordPress网站元并设置默认值。

function populate_site_meta( $site_id, array $meta = array() ) {
	global $wpdb;

	$site_id = (int) $site_id;

	if ( ! is_site_meta_supported() ) {
		return;
	}

	if ( empty( $meta ) ) {
		return;
	}

	/**
	 * Filters meta for a site on creation.
	 *
	 * @since 5.2.0
	 *
	 * @param array $meta    Associative array of site meta keys and values to be inserted.
	 * @param int   $site_id ID of site to populate.
	 */
	$site_meta = apply_filters( 'populate_site_meta', $meta, $site_id );

	$insert = '';
	foreach ( $site_meta as $meta_key => $meta_value ) {
		if ( is_array( $meta_value ) ) {
			$meta_value = serialize( $meta_value );
		}
		if ( ! empty( $insert ) ) {
			$insert .= ', ';
		}
		$insert .= $wpdb->prepare( '( %d, %s, %s)', $site_id, $meta_key, $meta_value );
	}

	$wpdb->query( "INSERT INTO $wpdb->blogmeta ( blog_id, meta_key, meta_value ) VALUES " . $insert ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared

	wp_cache_delete( $site_id, 'blog_meta' );
	wp_cache_set_sites_last_changed();
}

常见问题

FAQs
查看更多 >