BP_Activity_Component::setup_nav( array $main_nav = array(), array $sub_nav = array() )
Set up component navigation.
Description Description
See also See also
- BP_Component::setup_nav(): for a description of arguments.
Parameters Parameters
- $main_nav
-
(Optional) See BP_Component::setup_nav() for description.
Default value: array()
- $sub_nav
-
(Optional) See BP_Component::setup_nav() for description.
Default value: array()
Source Source
File: bp-activity/classes/class-bp-activity-component.php
public function setup_nav( $main_nav = array(), $sub_nav = array() ) {
// Stop if there is no user displayed or logged in.
if ( ! is_user_logged_in() && ! bp_displayed_user_id() ) {
return;
}
// Determine user to use.
if ( bp_displayed_user_domain() ) {
$user_domain = bp_displayed_user_domain();
} elseif ( bp_loggedin_user_domain() ) {
$user_domain = bp_loggedin_user_domain();
} else {
return;
}
$slug = bp_get_activity_slug();
$activity_link = trailingslashit( $user_domain . $slug );
// Add 'Activity' to the main navigation.
$main_nav = array(
'name' => _x( 'Activity', 'Profile activity screen nav', 'buddypress' ),
'slug' => $slug,
'position' => 10,
'screen_function' => 'bp_activity_screen_my_activity',
'default_subnav_slug' => 'just-me',
'item_css_id' => $this->id
);
// Add the subnav items to the activity nav item if we are using a theme that supports this.
$sub_nav[] = array(
'name' => _x( 'Personal', 'Profile activity screen sub nav', 'buddypress' ),
'slug' => 'just-me',
'parent_url' => $activity_link,
'parent_slug' => $slug,
'screen_function' => 'bp_activity_screen_my_activity',
'position' => 10
);
// Check @mentions.
if ( bp_activity_do_mentions() ) {
$sub_nav[] = array(
'name' => _x( 'Mentions', 'Profile activity screen sub nav', 'buddypress' ),
'slug' => 'mentions',
'parent_url' => $activity_link,
'parent_slug' => $slug,
'screen_function' => 'bp_activity_screen_mentions',
'position' => 20,
'item_css_id' => 'activity-mentions'
);
}
// Favorite activity items.
if ( bp_activity_can_favorite() ) {
$sub_nav[] = array(
'name' => _x( 'Favorites', 'Profile activity screen sub nav', 'buddypress' ),
'slug' => 'favorites',
'parent_url' => $activity_link,
'parent_slug' => $slug,
'screen_function' => 'bp_activity_screen_favorites',
'position' => 30,
'item_css_id' => 'activity-favs'
);
}
// Additional menu if friends is active.
if ( bp_is_active( 'friends' ) ) {
$sub_nav[] = array(
'name' => _x( 'Friends', 'Profile activity screen sub nav', 'buddypress' ),
'slug' => bp_get_friends_slug(),
'parent_url' => $activity_link,
'parent_slug' => $slug,
'screen_function' => 'bp_activity_screen_friends',
'position' => 40,
'item_css_id' => 'activity-friends'
) ;
}
// Additional menu if groups is active.
if ( bp_is_active( 'groups' ) ) {
$sub_nav[] = array(
'name' => _x( 'Groups', 'Profile activity screen sub nav', 'buddypress' ),
'slug' => bp_get_groups_slug(),
'parent_url' => $activity_link,
'parent_slug' => $slug,
'screen_function' => 'bp_activity_screen_groups',
'position' => 50,
'item_css_id' => 'activity-groups'
);
}
parent::setup_nav( $main_nav, $sub_nav );
}
Changelog Changelog
| Version | Description |
|---|---|
| 1.5.0 | Introduced. |