Я пытаюсь создать настраиваемую вкладку профиля Buddypress и сделать так, чтобы она была целевой страницей профиля пользователя. Я определил вкладку в functions.php:
// Profile home tab
function profile_tab_overview() {
global $bp;
bp_core_new_nav_item( array(
'name' => 'Overview',
'slug' => 'overview',
'screen_function' => 'overview_screen',
'position' => 40,
'parent_url' => bp_loggedin_user_domain() . '/overview/',
'parent_slug' => $bp->profile->slug,
'default_subnav_slug' => 'overview'
) );
}
add_action( 'bp_setup_nav', 'profile_tab_overview' );
function overview_screen() {
// Add title and content here - last is to call the members plugin.php template.
add_action( 'bp_template_title', 'overview_title' );
add_action( 'bp_template_content', 'overview_content' );
bp_core_load_template( 'buddypress/members/single/plugins' );
}
function overview_title() {
echo 'Overview';
}
function overview_content() {
echo 'Content';
}
Затем я установил его в качестве целевой страницы профиля в wp-config.php с помощью:
//Change BuddyPress default Members landing tab.
define('BP_DEFAULT_COMPONENT', 'overview' );
Если я заменил BP_DEFAULT_COMPONENT на стандартную страницу профиля Buddypress, например, «профиль», это сработает, но не с пользовательской страницей, которую я создал. Кто-нибудь знает почему или что я могу с этим поделать?