因此,由于wp_get_sites()
就是把它改成get_sites()
. 使用时get_sites()
, $TheBlogs
将是WP_Site
对象,而不是数组数组。这意味着要获取站点的详细信息,而不是使用get_blog_details()
您可以使用$blog->__get( \'blogname\' )
.
另一部分按字母顺序排序,需要对结果数组进行排序,如下所示get_sites()
似乎没有按blogname排序的参数。
// Get blogs with get_sites(), which uses \'number\' instead of \'limit\'.
$blogs = get_sites( [\'number\' => 1000] );
// Sort blogs alphabetically.
uasort(
$blogs,
function( $a, $b ) {
// Compare site blog names alphabetically for sorting purposes.
return strcmp( $a->__get( \'blogname\' ), $b->__get( \'blogname\' ) );
}
);
foreach ( $blogs as $blog ) {
// Store blog name in variable for later use.
$blogname = $blog->__get( \'blogname\' );
// Check blog is not excluded.
if (
get_site_option( \'msregister_blog1_id\' ) != $blogname &&
get_site_option( \'msregister_exclude_\' . $blogname ) != \'yes\'
) {
// Output option tag, escaping the blog name as appropriate.
printf(
\'<option value="%s">%s</option>\',
esc_attr( $blogname ),
esc_html( $blogname )
);
}
}