Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

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?

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

share|improve this question

closed as off-topic by G. M., birgire, ialocin, toscho Aug 6 at 18:40

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.

2 Answers 2

up vote 6 down vote accepted

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.

share|improve this answer

Check out the BuddyPress Custom Profile Menu plugin.

You should be able to add tabs just by creating a regular Wordpress menu.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.