2017-10-06 21 views
0

새 nav와 두 개의 subnav가 있습니다. 그들은 제대로 작동하지만 nav 항목을 클릭 할 때 첫 번째 subnav가 선택되도록하고 싶습니다. 왜냐하면 두 가지 differents 콘텐츠를 갖고 싶지 않기 때문입니다.Buddypress 첫 번째 하위 함을 선택했습니다.

새 작업 이름은 '작업'이며 두 하위 작업 이름은 '모든 작업'및 '새 작업 추가'입니다. 나는 'Jobs'를 클릭하고 모든 Jobs의 목록을 가지고 싶습니다. 그러면 'All Jobs'가 클릭됩니다. Buddypress는 예를 들어 'Profile'탭과 첫 번째 subnav에서 동일하게 만듭니다.

내 코드 :

function profile_tab_jobs() { 
    global $bp; 

    bp_core_new_nav_item(array(
     'name'    => 'Jobs', 
     'slug'    => 'jobs', 
     'screen_function'  => 'jobs_screen', 
     'position'   => 40, 
     'parent_url'   => bp_loggedin_user_domain() . '/jobs/', 
     'parent_slug'   => $bp->profile->slug, 
     'default_subnav_slug' => 'jobs_subnav', 
    )); 

    bp_core_new_subnav_item(array(
     'name'    => 'All Jobs', 
     'slug'    => 'all_jobs', 
     'parent_url'  => trailingslashit(bp_displayed_user_domain() . 'jobs'), 
     'parent_slug'  => 'jobs', 
     'screen_function' => 'all_job_screen', 
     'position'   => 100, 
     'user_has_access' => bp_is_my_profile() 
    )); 

    bp_core_new_subnav_item(array(
     'name'    => 'Add new Job', 
     'slug'    => 'new_job', 
     'parent_url'  => trailingslashit(bp_displayed_user_domain() . 'jobs'), 
     'parent_slug'  => 'jobs', 
     'screen_function' => 'add_job_screen', 
     'position'   => 110, 
     'user_has_access' => bp_is_my_profile() 
    )); 

} 
add_action('bp_setup_nav', 'profile_tab_jobs'); 

워드 프레스

4.8.2 내가 해결책을 찾기

답변

0

주셔서 감사합니다. bp_core_new_nav_item (subnav slug)에서 'default_subnav_slug'값을 변경합니다.

function profile_tab_jobs() { 
    global $bp; 

    bp_core_new_nav_item(array(
     'name'     => 'Jobs', 
     'slug'     => 'jobs', 
     'screen_function'  => 'jobs_screen', 
     'position'    => 40, 
     'parent_url'   => bp_loggedin_user_domain() . '/jobs/', 
     'parent_slug'   => $bp->profile->slug, 
     'default_subnav_slug' => 'all_jobs', 
    )); 

    bp_core_new_subnav_item(array(
     'name'    => 'All Jobs', 
     'slug'    => 'all_jobs', 
     'parent_url'  => trailingslashit(bp_displayed_user_domain() . 'jobs'), 
     'parent_slug'  => 'jobs', 
     'screen_function' => 'jobs_screen', 
     'position'   => 100, 
     'user_has_access' => bp_is_my_profile() 
    )); 

    bp_core_new_subnav_item(array(
     'name'    => 'Add new Job', 
     'slug'    => 'new_job', 
     'parent_url'  => trailingslashit(bp_displayed_user_domain() . 'jobs'), 
     'parent_slug'  => 'jobs', 
     'screen_function' => 'add_job_screen', 
     'position'   => 110, 
     'user_has_access' => bp_is_my_profile() 
    )); 

} 
add_action('bp_setup_nav', 'profile_tab_jobs');