You can try making one yourself. To create a new menu item in the BuddyPress member profile, you will need to place the following function into either your theme's function.php or BuddyPress's bp-custom.php which is located in the plugin's main directory.
function bp_content_setup_nav() {
global $bp;
bp_core_new_nav_item( array(
'name' => __('My Posts', 'buddypress'),
'slug' => 'my-posts',
'screen_function' => 'my_posts_screen_link',
'position' => 40,//weight on menu, change it to whatever you want
'default_subnav_slug' => 'my-posts-subnav'
) );
bp_core_new_subnav_item( array(
'name' => __( 'My Posts', 'buddypress' ),
'slug' => 'my-posts',
'parent_url' => trailingslashit( bp_loggedin_user_domain() . 'main-tab' ),
'parent_slug' => 'my-posts',
'screen_function' => 'my_posts_screen_link',
'position' => 10//again, weight but for submenu
) );
do_action( 'bp_content_setup_nav' );
}
add_action( 'bp_setup_nav', 'bp_content_setup_nav' );
This is just to set up a single tab along with a subnav. You can create additional sub_navs by copying the bp_core_new_subnav_item and changing the necessary elements around. Otherwise, if you only have one item (no other subnavs), then the subnav bit is unnecessary. If you have multiple subnavs, then you should include the redundant subnav for the main nav_item, or it will not show up on the subnav menu.
Hopefully you can infer all the bits on your own. If not, I can try clarifying in another reply. Otherwise, try experimenting. Refer to http://codex.buddypress.org/developer/core/bp_core_new_nav_item/ for additional options for the function.
Anyhow, to render the content, you will now need another function beneath the one above to display the 'screen_function'.
function my_posts_screen_link() {
add_action( 'bp_template_title', 'my_posts_screen_title' );
add_action( 'bp_template_content', 'my_posts_screen_content' );
bp_core_load_template( apply_filters( 'bp_core_template_plugin', 'members/single/plugins' ) );
}
function my_posts_screen_title() {
echo 'Whatever Title You Want';
}
function my_posts_screen_content() {
get_template_part( 'directory-to-content-file' );
//or you can put code here; only useful for short bits or echoing plain text
}
For multiple subnav items, you'll need a screen function for each one. The screen title is optional, so you can get rid of that if you want.
So that's how you add a menu plus content. In order for you to display member posts, just make the php file you call through get_template_part run the loop and place whatever criteria you need. To get the user author in the args, refer to http://codex.buddypress.org/developer/the-bp-global/. If you need help on running the loop, please just refer to any of the numerous WordPress documentation.
Word of warning: Pagination does not work with the default subnav as far as I know. I've never been able to get it to work. However, it does work on any other subnav. So unfortunately you'll have to create additional subnavs if you want to paginate. If anyone knows the answer to this, then I'd be all ears myself.
Hopefully that answers your question and is not too convoluted or confusing.