Wordpress multisite-从wp_sitemeta获取数据
我有一个多站点网络,大约有30个站点 在Wordpress multisite-从wp_sitemeta获取数据,wordpress,wordpress-theming,multisite,Wordpress,Wordpress Theming,Multisite,我有一个多站点网络,大约有30个站点 在wp\u sitemeta表中,有一些以前的开发人员设置的选项(其中之一是“模板颜色”) 因此,在wp\u sitemeta表中,有一个site\u id,其meta\u键为'template\u color',每个主题的颜色十六进制值为meta\u值 我写了以下内容: foreach ( $sites as $site ) { switch_to_blog( $site->blog_id ); //do things
wp\u sitemeta
表中,有一些以前的开发人员设置的选项(其中之一是“模板颜色”)
因此,在wp\u sitemeta
表中,有一个site\u id
,其meta\u键为'template\u color',每个主题的颜色十六进制值为meta\u值
我写了以下内容:
foreach ( $sites as $site ) {
switch_to_blog( $site->blog_id );
//do things
$value = get_site_option( 'template_color', 'not available' );
echo $value;
restore_current_blog();
}
但是,$value
只显示每个站点的“不可用”
我做错什么了吗?您是否尝试用get\u option()代替get\u site\u option()
多站点上的get_site_option()应始终返回网络范围的设置;)
相反,get_option()应该返回特定于站点的选项
让我知道 如果我切换到$value=get_选项('header_hex','notavailable')代码>它仍然没有显示任何内容。但是我可以看看数据库,我看到每个站点都设置了header\u hex
。我在手机上,所以只是猜测,但OP提到的是一个网络表,不是吗?你能上传你的表的快照吗?所以,我认为这是一个多站点网络-我忽略(忘记)的是它是多网络和多站点的。我可以使用类似的东西,但在网络层面上,准确地说我需要什么。我认为Francesco的答案是正确的方法。。。很高兴知道您在哪里运行此代码以及如何获得$sites
价值