如果未使用is_multisite()和持久高速缓存,则加载并缓存某些经常请求的站点选项。

原型

wp_load_core_site_options( int $network_id = null )

参数

$network_id (int) (Optional) 要查询选项的站点ID。默认为当前站点。

源文件

路径:wp-includes/option.php

<?php
...
function wp_load_core_site_options( $network_id = null ) {
	global $wpdb;
	if ( ! is_multisite() || wp_using_ext_object_cache() || wp_installing() )
		return;
	if ( empty($network_id) )
		$network_id = get_current_network_id();
	$core_options = array('site_name', 'siteurl', 'active_sitewide_plugins', '_site_transient_timeout_theme_roots', '_site_transient_theme_roots', 'site_admins', 'can_compress_scripts', 'global_terms_enabled', 'ms_files_rewriting' );
	$core_options_in = "'" . implode("', '", $core_options) . "'";
	$options = $wpdb->get_results( $wpdb->prepare( "SELECT meta_key, meta_value FROM $wpdb->sitemeta WHERE meta_key IN ($core_options_in) AND site_id = %d", $network_id ) );
	foreach ( $options as $option ) {
		$key = $option->meta_key;
		$cache_key = "{$network_id}:$key";
		$option->meta_value = maybe_unserialize( $option->meta_value );
		wp_cache_set( $cache_key, $option->meta_value, 'site-options' );
	}
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_load_core_site_options/