thomasclayson
  • 0
Новичок

Удалить вкладки из групп buddypress и страниц участников [закрыто]

  • 0
Закрыто. Этот вопрос
не по теме. В настоящее время ответы не принимаются.

Share
  1. Удалось просканировать основной код и найти эту функцию:

    bp_core_remove_subnav_item

    Итак, вы можете сделать что-то вроде этого:

    function remove_group_options() {
        global $bp;
    
        bp_core_remove_subnav_item($bp->groups->slug, 'members');
        bp_core_remove_subnav_item($bp->groups->slug, 'send-invites');
    
    }
    add_action( 'bp_setup_nav', 'remove_group_options' );
    
    • 0
  2. Ответ выше не работает в 1.5

    $bp->groups->slug
    

    должен стать

    bp_get_current_group_slug()
    

    Для поддержки обеих версий bp используйте:

    function remove_group_options()
    {
        global $bp;
        $parent_slug = isset( $bp->bp_options_nav[$bp->groups->current_group->slug] ) ? $bp->groups->current_group->slug : $bp->groups->slug;
        bp_core_remove_nav_item( $parent_slug, 'members' );
        bp_core_remove_nav_item( $parent_slug, 'send-invites' );
    }
    add_action( 'bp_setup_nav', 'remove_group_options' );
    
    • 0
  3. Это работает для меня в BP 2.0.1:

    Функции для удаления пунктов навигации и подпунктов аналогичны за исключением того, что функция подпункта требует дополнительного аргумента для указания основного пункта навигации, подпунктом которого он является.

    Таким образом, следующий код удаляет основной элемент навигации «форумы», а также удаляет элемент вспомогательной навигации «изменить аватар» из основного элемента навигации «Профиль»:

    function remove_nav_items() {
        bp_core_remove_nav_item( 'forums' );
        bp_core_remove_subnav_item( 'profile', 'change-avatar' );
    }
    add_action( 'bp_setup_nav', 'remove_nav_items');
    

    Я тестировал это в теме bp-default в BP 2.0.1, а также на своем собственном сайте.

    Надеюсь, поможет 🙂

    • 0

Оставить ответ

You must login to add an answer.