Hello,
I’m trying to add a new link to the menu on my BuddyPress profile page. I’ve looked through the BuddyPress codex and forums and I’ve just about given up on receiving any support from their website as no one replies.
Here is my code
function bp_core_new_nav_item( $args = array( 'name' => __('community', 'buddypress'), 'slug' => $bp->community->slug, 'position' => 50, 'show_for_displayed_user' => false, 'screen_function' => false, 'default_subnav_slug' => 'community', 'item_css_id' => $bp->community->id )); $result = bp_core_new_nav_item($args);
I’m given the following error
Parse error: syntax error, unexpected '(', expecting ')' in C:\xampp\htdocs\wordpress\wp-content\plugins\bp-custom.php on line 25
Am I using this wrong? could someone explain it please? as I say I’ve given up on the buddy press website itself.
Thanks
Phil
Hi Phill
Thank you for posting. You can refer the following URL to create a new nav item for BuddyPress Profile Tab.
https://buddydev.com/support/forums/topic/move-subnav-tabs/#post-3296
Thank You
Ravi- This reply was modified 8 years, 6 months ago by Ravi.
Hi Ravi,
Thank you for your speedy reply. Its appreciated. I’ve read through that topic and it looks like the person there was wanting to move a menu item. I’m trying to add a new one.
I’m really struggling to change the default forum feed in the activity section, so I thought if I do away with that feed and added a custom page with the BBPress shortcode in there and then link to that page instead. Seemed simple enough until I started trying to add the link. If that topic you posted will do what I want then thank you very much, il read through it all again and see if I can get it to work.
I just wanted to check it will do that before I spend time trying to fix it. My PHP is probably < novice level at the moment which is quickly becoming and issue haha!
Thanks Ravi, hope to hear from you soon.
Hi Phill,
I have tried to fix problem by adding a new menu to Buddypress profile page that render shortcode content. Please try it in your bp-custom.php file and let me know if it works or not.
function buddydev_modify_user_profile_tab() { $bp = buddypress(); $user_url = bp_loggedin_user_domain(); // add 'Change profile picture' sub-menu tab bp_core_new_subnav_item( array( 'name' => 'Community', //replace with your name 'slug' => 'community', // slug must be unique 'parent_url' => trailingslashit( $user_url . $bp->profile->slug ), 'parent_slug' => $bp->profile->slug, 'screen_function' => 'buddydev_screen_profile_community', 'position' => 30, 'user_has_access' => bp_is_my_profile() ) ); } add_action( 'bp_setup_nav', 'buddydev_modify_user_profile_tab', 100 ); function buddydev_screen_profile_community() { add_action( 'bp_template_content', 'buddydev_load_content' ); bp_core_load_template( 'members/single/settings/general' ); } function buddydev_load_content() { echo do_shortcode( '[mpp-show-gallery id=303]' ); // replace by Your shortcode }
Thank You
RaviThanks Ravi! absolute legend!
One more small question. If I wanted to move the ‘community’ link into the top level of the menu next to ‘Activity’ ‘Profile’ and so on?
My intention is to set it as a top level link, that when a member goes to that page the default view is the ‘community’ page. Just so my members don’t need to click about too much really. Id like it to be the first thing they see. I’ve learnt how to change the default component loaded so that’s not a worry.
I was just wandering which part of the code you posted I would need to alter to achieve this.
Many Thanks Ravi,
PhilB
Hi Phill,
Thank you for your appreciation. Please remove the previous code and try the following code in your bp-custom.php file.
function buddydev_modify_user_profile_tab() { bp_core_new_nav_item( array( 'name' => 'Community', //replace with your name 'slug' => 'community', // slug must be unique 'screen_function' => 'buddydev_screen_profile_community', 'position' => 11, // unique 'default_subnav_slug' => 'community-sub', 'show_for_displayed_user' => true, //Whether the nav item should be visible when viewing a member profile other than your own ) ); } add_action( 'bp_setup_nav', 'buddydev_modify_user_profile_tab', 8 ); function buddydev_screen_profile_community() { add_action( 'bp_template_content', 'buddydev_load_content' ); bp_core_load_template( 'members/single/plugins' ); } function buddydev_load_content() { echo do_shortcode( '[mpp-show-gallery id=303]' ); // replace by Your shortcode }
Thank You
Ravi
You must be logged in to reply to this topic.