我正在尝试制作一个快捷代码,在我的多站点wordpress网络中创建一个我所有站点的列表。我的想法是在页面主体中使用[list\u sites],然后得到我所有站点的列表。
我使用get_网站是因为我使用的是4.8.3版本。
当我将此函数添加到父主题的函数中时。php文件,我得到一个500内部错误。
我尝试使用一个名为Code Snippets的插件来添加此代码,但我发现了一个错误,这提供了一个线索:
由于第11行出现错误,代码段已被停用:
语法错误,意外的“[”
我在网上看到的每个示例代码似乎都使用相同的语法,所以我不确定我做错了什么。
这是我的代码:
function make_list_shortcode() {
$subsites = get_sites();
if ( ! empty ( $subsites ) ) {
echo '<ul class="subsites">';
foreach( $subsites as $subsite ) {
$subsite_id = get_object_vars( $subsite )["blog_id"];
$subsite_name = get_blog_details( $subsite_id )->blogname;
$subsite_link = get_blog_details( $subsite_id )->siteurl;
echo '<li class="site-' . $subsite_id . '"><a href="' . $subsite_link . '">' . $subsite_name . '</a></li>';
}
echo '</ul>';
}
}
add_shortcode('list_sites', 'make_list_shortcode');