如何创建一个单一/主导航菜单,菜单的所有网络站点在wordpress多站点在前面/用户端。
就像我在我的母站点和子站点中有一个管理页面一样,那么我如何将菜单管理与site1的子菜单管理、site2的管理以及所有的.
我试过,像这样的2-3码
//存储当前正在查看的全局blog_id;$current_blog_id = $blog_id; //切换到主博客,它的id为1 switch_to_blog(1); wp_nav_menu(); //输出WordPress导航菜单//wp_nav_菜单(数组(‘=> 'homepagemenu’)); // wp_nav_菜单( // theme_location‘=> 'homepagemenu’);/ //切换回当前正在查看的博客switch_to_blog($current_blog_id);
发布于 2013-08-15 07:52:40
您可以修改这个插件的主要功能:http://wordpress.org/plugins/hyper-admins/,但是它将站点的菜单添加到管理栏,而不是前端。
首先,您应该创建一个站点专用插件,其中包含一个函数来加载网络中的站点:
function all_the_sites_menu() {
if ( ! is_super_admin() )
return;
// Get all blog ids
global $wpdb;
$blog_ids = $wpdb->get_col( $wpdb->prepare( "
SELECT blog_id
FROM {$wpdb->blogs}
WHERE site_id = %d
AND spam = '0'
AND deleted = '0'
AND archived = '0'
ORDER BY registered DESC
", $wpdb->siteid ) );
echo '<ul>'; //start the list
foreach ( $blog_ids as $blog_id ) {
$blog_id = (int) $blog_id;
$blog = get_blog_details( $blog_id );
echo '<li><a href="http://' . $blog->siteurl . $blog->path .'">';
echo $blog->blogname . '</a></li>';
}
echo '</ul>'; //end the list
}然后,您可以在主题中插入一个标记以输出列表,如下所示:
<?php all_the_sites_menu(); ?>
https://stackoverflow.com/questions/18142612
复制相似问题