确保仅在BP设置核心导航后才尝试设置项目。您可以通过挂接bp_setup_nav
优先级高于10
.
因此:
function bbg_setup_nav() {
bp_core_new_subnav_item( array(
\'name\' => \'Document List\',
\'slug\' => \'group-document-list\',
\'parent_url\' => $bp->loggedin_user->domain . $bp->groups->slug . \'/\',
\'parent_slug\' => $bp->groups->slug,
\'screen_function\' => \'group_document_list_function_to_show_screen\',
\'position\' => 55
) );
}
add_action( \'bp_setup_nav\', \'bbg_setup_nav\', 100 );
请记住,正如所写的,此代码旨在向
Groups
用户配置文件的子AV。如果要将其附加到单个组,则需要使用不同的
parent_slug
和
parent_url
:
// ...
\'parent_slug\' => bp_get_current_group_slug(),
\'parent_url\' => bp_get_group_permalink( groups_get_current_group() )
// ...
不过,老实说,如果要向BP组添加subnav项,最好使用BP组扩展API
http://codex.buddypress.org/developer-docs/group-extension-api/. 您只需填写几个方法,就可以完成所有特定于BP的导航逻辑。如果有方法(如
create_screen()
你不会用的,把它们留空就行了。