Add BuddyPress Profile Menu Item

In BuddyPress, when a user clicks on their username, they are presented with a page that contains a menu:

Activity
Profile
Messages
Friends
Groups
Settings

How do I add an item to this menu?

Read More

How do display this menu inside my template? (The default page template only displays the main navigation.)

Related posts

Leave a Reply

2 comments

  1. Here’s an example of adding a menu items pointing to custom templates. If you want to link to existing BP elements, you’ll need to look up the appropriate action. Add this to functions.php:

    // Set up Cutsom BP navigation
    function my_setup_nav() {
          global $bp;
    
          bp_core_new_nav_item( array( 
                'name' => __( 'Item One', 'buddypress' ), 
                'slug' => 'my-item-one', 
                'position' => 30,
                'screen_function' => 'my_item_one_template', 
          ) );
    
          bp_core_new_nav_item( array(
                'name' => __( 'Item Two', 'buddypress' ),
                'slug' => 'my-item-two',
                'position' => 20,
                'screen_function' => 'my_item_two_template' 
          ) );
    
          // Change the order of menu items
          $bp->bp_nav['messages']['position'] = 100;
    
          // Remove a menu item
          $bp->bp_nav['activity'] = false;
    
          // Change name of menu item
          $bp->bp_nav['groups']['name'] = ‘community’;
    }
    
    add_action( 'bp_setup_nav', 'my_setup_nav' );
    
    
    // Load a page template for your custom item. You'll need to have an item-one-template.php and item-two-template.php in your theme root.
    function my_item_one_template() {
          bp_core_load_template( 'item-one-template' );
    }
    
    function my_item_two_template() {
          bp_core_load_template( 'item-two-template' );
    }
    

    Hope that helps! More at this article on Themekraft.