Search Results for 'bp_core_remove_nav_item'
-
AuthorSearch Results
-
August 28, 2014 at 1:18 pm #188650
In reply to: Remove menu tabs from BuddyPress Member Page
danbp
Participanthi @kostas-gogas,
try this:
bp_core_remove_nav_item( ‘friends’ ); // bp topnav
bp_core_remove_subnav_item( ‘activity’, ‘friends’ ); //bp subnav (my activities, my groups, etc)
add_action( ‘bp_ready’,’your function’);action hook bp-core-dependency.php:104
Fire the ‘bp_ready’ action, which runs after BP is set up and the page is about to render.August 18, 2014 at 1:54 am #187100In reply to: Hide Profile Navigation from non-friends
danbp
ParticipantHi @dmccuiston,
here is another solution which let you remove easily nav and subnav items to any visitor and users who are not friends.
If one or all items are removed, a message is displayed.
Put these 3 functions in bp-custom.php or child-theme functions.php
function bpfr_view_profile_msg() { // msg in case the nav item is removed if ( bpfr_maybe_hide_friends_nav_etc( $retval ) ) echo'<h3>Sorry, you can only view the profile of your friends !</h3>'; } add_action( 'template_notices','bpfr_view_profile_msg' ); function bpfr_maybe_hide_friends_nav_etc() { $retval = false; // condition if ( bp_is_user() && ! bp_is_my_profile() && ! friends_check_friendship( bp_displayed_user_id(), bp_loggedin_user_id() ) ) { $retval = true; } return $retval; } function bpfr_hide_friends_nav_to_non_friends() { // stop if condition is not ok if ( ! bpfr_maybe_hide_friends_nav_etc() ) { return; } // otherwise we remove the nav items // bp topnav items bp_core_remove_nav_item( 'profile' ); bp_core_remove_nav_item( 'groups' ); bp_core_remove_nav_item( 'forums' ); //bp subnav items bp_core_remove_subnav_item( 'activity', 'friends' ); bp_core_remove_subnav_item( 'activity', 'mentions' ); } add_action( 'bp_ready', 'bpfr_hide_friends_nav_to_non_friends' );June 2, 2014 at 9:51 am #183568In reply to: Notificatons only for admin visible
asianowl
Participanthere’s some clues:
First you need to check the user’s role/capabilities and then remove the navigation menu for these users. For me, I used:
if (current_user_can('none_admin_role')){bp_core_remove_nav_item( 'notifications');}} add_action( 'wp', 'bp_remove_nav_item' );You then still need to remove it from the admin bar. My code:
function my_remove_admin_menu(){ global $wp_admin_bar; if (current_user_can('none_admin_role')) { $wp_admin_bar->remove_menu('notifications'); } } add_action('bp_setup_admin_bar', 'my_remove_admin_menu',301);hopefully, this does the trick for you. I took me while to figure this out…goodluck.
March 22, 2014 at 10:51 am #180126In reply to: How I hide my un-wanted profile tabs
Henry Wright
ModeratorHi @sundev
Have you tried using
bp_core_remove_nav_item( 'slug' )? There is also a function available in BP to remove sub-nav itemsbp_core_remove_subnav_item( 'slug', 'subnav-slug' )November 28, 2013 at 8:03 pm #174945In reply to: [Resolved] Remove Activity tab from Groups
iheartwine
ParticipantI got rid the activity from the profile with this code:
function bphelp_remove_groups_from_profile(){ bp_core_remove_nav_item('activity'); } add_action('bp_activity_setup_nav','bphelp_remove_groups_from_profile');but still looking for a solution to eliminate it from Group page
September 13, 2013 at 9:54 pm #171306In reply to: remove “activity” tab from user profile
bp-help
Participantfunction bphelp_remove_activity_from_profile(){ bp_core_remove_nav_item('activity'); } add_action('bp_activity_setup_nav','bphelp_remove_activity_from_profile');August 6, 2013 at 1:51 pm #169446Ishanna
ParticipantHallo @sbrajesh !
I tried use code:
add_action(‘bp_friends_setup_nav’,'bpdev_custom_hide_friends_if_not_self’); function bpdev_custom_hide_friends_if_not_self(){ if(bp_is_my_profile()|| is_super_admin()) return ; bp_core_remove_nav_item(‘friends’); }I copied and pasted the code into the ‘bp_custom.php’ file but it did not work for me.
I’m new to wordpress, html, php and css but I seem to find my way til now. Some advise please? I really need this option to work and I can’t find a plugin that cover this.Kind regards,
June 20, 2013 at 2:09 pm #166485In reply to: Im Multisite , Remove SITES Fields from Profile Nav
Brajesh Singh
ParticipantIf you guys mean the the sites from the navigation, then you can use the following code in either your theme’s functions.php or bp-custom.php
function bpdev_remove_blogs_nav(){ global $bp; bp_core_remove_nav_item($bp->blogs->id);// } add_action('wp_loaded','bpdev_remove_blogs_nav');Hope that helps.
May 16, 2013 at 7:12 am #164055In reply to: Removing bp_nav menu item for specific users
Grant Derepas
ParticipantAchieved what I was after with the following code
function global_remove_media_tab() { global $bp; $profileid = bp_displayed_user_id(); $profiletype = xprofile_get_field_data( 'User Type', $profileid ); if ($profiletype == 'Groupie'){ bp_core_remove_nav_item('media'); } } add_action('bp_setup_nav','global_remove_media_tab');May 16, 2013 at 4:28 am #164051In reply to: Removing bp_nav menu item for specific users
Grant Derepas
Participant//For own profile //First i need the logged in users id function global_remove_media_tab() { global $bp; $userid = bp_loggedin_user_id(); //Then use that ID to work out what type of user they are $usertype = xprofile_get_field_data( 'User Type', $userid ); if ($usertype == 'Groupie'){ bp_core_remove_nav_item('media'); } } add_action('bp_setup_nav','global_remove_media_tab');Ok this code “works”.
But it removes the media tab for every profile when logged in as a “Groupie” User type.
What I want is to remove the tab from all Groupie Member profiles only including groupie members looking at their own profile.May 16, 2013 at 2:23 am #164048In reply to: Removing bp_nav menu item for specific users
Grant Derepas
Participant//For own profile //First i need the logged in users id global $bp; $userid = bp_loggedin_user_id(); //Then use that ID to work out what type of user they are $usertype = bp_profile_field_data( 'field=User Type&user_id=$userid' ); if ($usertype == 'type1'){ function remove_media_tab(){ bp_core_remove_nav_item('media'); } } add_action('bp_friends_setup_nav','remove_media_tab');Ok updated that code and added it to my themes functions.php file.
Upon testing the code doesn’t seem to be doing anything. Logged in as specified user type and viewed my own profile as well as another member of that types profile and both are still showing the media tab.
Thoughts?
March 19, 2013 at 12:42 am #156742In reply to: Check if an user is or not a group_member :
daganread
ParticipantI know this thread is 2 years old. But here’s my problem:
I would like to display different member profiles for different types of groups. I have 2 groups: faculty and contributor. More accurately i want to disable components like bp Links and group docs wiki for the faculty group; i settled for removing the links to such.
i thought the best approach would be to check if a member is of a certain group and then based on the conditional statement, remove the unnecessary tabs in the profile menu. If there is a better approach. Please lead the way:)
in my theme’s function.php:
`
if(groups_is_user_member( bp_loggedin_user_id(), BP_Groups_Group::get_id_from_slug(‘faculty’))){function setup_nav() {
global $bp;// Remove a menu item
bp_core_remove_nav_item( ‘messages’ );}
add_action( ‘bp_setup_nav’, ‘setup_nav’, 1000 );
}
`if i make the conditional statement truthy the appropriate tab is removed. If i stick the code in the if statement into something like header.php it works. BUT for some reason, together they do not.
Perhaps functions.php cannot reach such functions? I tried putting it into bp-custom.php, site just crashed.
Thank you for your time, any help would be appreciated 🙂
February 28, 2013 at 11:33 pm #154758Brajesh Singh
ParticipantYou Can put this code in your bp-custom.php and It will take care of your issue
`
add_action(‘bp_friends_setup_nav’,’bpdev_custom_hide_friends_if_not_self’);function bpdev_custom_hide_friends_if_not_self(){
if(bp_is_my_profile()|| is_super_admin())
return ;bp_core_remove_nav_item(‘friends’);
}
`
hope that helps.
October 18, 2012 at 3:34 pm #143662In reply to: Show nav items for profile users conditionally
modemlooper
Moderatorbp_core_remove_nav_item()
August 26, 2012 at 3:03 pm #140276In reply to: How to remove a tab from profile ?
modemlooper
Moderator`function my_func_remove_xprofile_tabs(){
global $bp;
bp_core_remove_nav_item( ‘events’ );
}
add_action( ‘bp_setup_nav’, ‘my_func_remove_xprofile_tabs’, 15 );`August 26, 2012 at 12:08 pm #140270In reply to: How to remove a tab from profile ?
Roger Coathup
Participant@shemada – to do this properly, you need to use the bp_core_remove_nav_item() function.
Add a call to it in your theme’s functions.php file passing in the ID of the Events nav item.
If you Google on here for ‘remove_nav_item’ you should find plenty of previous threads / examples.
August 14, 2012 at 5:46 pm #139440In reply to: remove “activity” tab from user profile
mystica
Memberthis made the trick
function mj_remove_groups_nav() {
bp_core_remove_nav_item( ‘activity’ );}
add_action( ‘bp_setup_nav’, ‘mj_remove_groups_nav’, 15 );August 6, 2012 at 8:26 pm #138556David
MemberAND I solved my own problem by typing it out here.
YES – bp_core_remove_nav_item( ‘invite-anyone’ );
My other solution was not working because it is not a subnav. As soon as I typed that I realized it.
Thanks again for help.
November 3, 2011 at 1:45 pm #123678In reply to: Moving Links around
leethompson
Memberok, I found out if you remove a parent item the page(function) is removed too, So I removed this function:
`function boone_remove_blogs_nav() {
bp_core_remove_nav_item( ‘privacy’ );
bp_core_remove_nav_item( ‘settings’ );
bp_core_remove_nav_item( ‘invite-anyone’ );
}
add_action( ‘bp_setup_nav’, ‘boone_remove_blogs_nav’, 15 );`and I used css to hide the parent item. In my themes main css I added :
`#user-privacy {
display: none !important;
}#user-settings {
display: none !important;}
`Now I will write a javascript function to highlight the right parent item if I am in the proper section.
Then i will try to write a bp global function to re-assign subnav items to different parent item.
November 3, 2011 at 1:29 pm #123676leethompson
MemberThis is a great post but what about moving sub links to a new parent item, this kinda works but if I remove the parent item the function stops. in my themes functions.php
`function remove_blogs_nav() {
bp_core_remove_nav_item( ‘privacy’ );
bp_core_remove_nav_item( ‘settings’ );
bp_core_remove_nav_item( ‘invite-anyone’ );
}
add_action( ‘bp_setup_nav’, ‘remove_blogs_nav’, 15 );function bp_add_create_group_subnav() {
global $bp;
$groups_link = ‘/groups-2/’;
$settings_link = $bp->loggedin_user->domain ;/* Add the subnav items to the groups nav item */
if (function_exists(‘bp_core_new_subnav_item’)) {
bp_core_new_subnav_item( array(
‘name’ => __( ‘Create Clan’, ‘buddypress’ ),
‘slug’ => ‘create’,
‘parent_url’ => $groups_link,
‘parent_slug’ => $bp->groups->slug,
‘screen_function’ => ‘groups_screen_group_home’,
‘position’ => 40,
‘item_css_id’ => ‘home’ ) );bp_core_new_subnav_item( array(
‘name’ => __( ‘Settings’, ‘buddypress’ ),
‘slug’ => ‘settings’,
‘parent_url’ => $settings_link,
‘parent_slug’ => $bp->profile->slug,
‘screen_function’ => ‘profile-settings’,
‘position’ => 30,
‘item_css_id’ => ‘profile-settings’ ) );bp_core_new_subnav_item( array(
‘name’ => __( ‘Privacy’, ‘buddypress’ ),
‘slug’ => ‘privacy’,
‘parent_url’ => $settings_link,
‘parent_slug’ => $bp->profile->slug,
‘screen_function’ => ‘profile-privacy’,
‘position’ => 30,
‘item_css_id’ => ‘profile-privacy’ ) );}
}
add_action(‘bp_setup_nav’, ‘bp_add_create_group_subnav’);
`
If I comment out :
`// bp_core_remove_nav_item( ‘privacy’ );
// bp_core_remove_nav_item( ‘settings’ );`The sub links are in the Profile item, and functional, but still link to each original man item.
thanks Boone you are a lot of help
October 2, 2011 at 11:41 am #121845In reply to: Problem with removing Home in group
Sven Lehnert
Participantadd it in your function.php
function remove_group_home_nav() {
bp_core_remove_nav_item( bp_get_current_group_slug(), ‘home’ );
}
add_action( ‘bp_setup_nav’, ‘remove_group_home_nav’ );September 5, 2011 at 2:05 am #119585jonnyauk
ParticipantAh, my mistake – this code does actually work HOWEVER , I can’t get it to hide ‘Send Invites’ or anything else under the group menu… do I have to do something different?
`function ja_remove_navigation_tabs() {
bp_core_remove_nav_item(‘friends’);
bp_core_remove_nav_item(‘settings’);
}
add_action( ‘bp_setup_nav’, ‘ja_remove_navigation_tabs’, 15 );`April 10, 2011 at 9:44 pm #109947r-a-y
Keymaster@nahummadrid – This is a known bug. Using bp_core_remove_nav_item() will remove access to those pages as well. Right now, I’d suggest hiding the nav item via CSS or by hacking the $bp global to remove the item.
April 10, 2011 at 11:43 am #109906Nahum
Participant`function boone_remove_groups_nav() {
bp_core_remove_nav_item( ‘groups’ );
}
add_action( ‘bp_setup_nav’, ‘boone_remove_groups_nav’, 15 );
`
When I put in functions it doesn’t work at all. The only way i get this to work is putting it in the BP-Custom but then it cuts off all access to groups and forum subpages….can’t figure whyApril 8, 2011 at 2:50 pm #109823Nahum
ParticipantI thought the same would work for groups…but it’s throwing the group count # up above the header when I use alone or in conjunction with the blogs snippet.
`function remove_groups_nav_for_zero() {
global $bp;
if ( bp_groups_total_count_for_user() == 0 )
bp_core_remove_nav_item( $bp->groups->slug );
}
add_action( ‘bp_setup_nav’, ‘remove_groups_nav_for_zero’, 11 );
`Any ideas why this is happening…and not with the blogs one.
-
AuthorSearch Results