Sridhar Katakam
// To register and display a custom sidebar in Secondary Sidebar location for logged in users
//* Register Members only Secondary sidebar
genesis_register_sidebar( array(
'id' => 'members-secondary',
'name' => __( 'Secondary Sidebar (Members)', 'metro' ),
'description' => __( 'This is the members only secondary sidebar.', 'metro' ),
) );
//* Show Members only custom Secondary sidebar in Secondary Sidebar location
add_action( 'genesis_after_header', 'sk_change_genesis_secondary_sidebar' );
function sk_change_genesis_secondary_sidebar() {
if( is_user_logged_in() && is_active_sidebar( 'members-secondary' ) ) {
// Remove the Secondary Sidebar from the Secondary Sidebar area.
remove_action( 'genesis_sidebar_alt', 'genesis_do_sidebar_alt' );
add_action( 'genesis_sidebar_alt', 'sk_do_sidebar_alt' );
}
}
function sk_do_sidebar_alt() {
dynamic_sidebar( 'members-secondary' );
}
// To register and display a custom sidebar in Primary Sidebar location for logged in users
//* Register Members only Primary sidebar
genesis_register_sidebar( array(
'id' => 'members-primary',
'name' => __( 'Primary Sidebar (Members)', 'metro' ),
'description' => __( 'This is the members only primary sidebar.', 'metro' ),
) );
//* Show Members only custom Primary sidebar in Primary Sidebar location
add_action( 'genesis_after_header', 'sk_change_genesis_primary_sidebar' );
function sk_change_genesis_primary_sidebar() {
if( is_user_logged_in() && is_active_sidebar( 'members-primary' ) ) {
// Remove the Primary Sidebar from the Primary Sidebar area.
remove_action( 'genesis_sidebar', 'genesis_do_sidebar' );
add_action( 'genesis_sidebar', 'sk_do_sidebar' );
}
}
function sk_do_sidebar() {
dynamic_sidebar( 'members-primary' );
}
// To display a custom menu named “Primary Navigation – Members” in Primary Navigation location and a custom menu named “Secondary Navigation – Members” for logged in users
// (Instead of the code in earlier section)
add_action( 'init', 'wpsites_members_menu' );
function wpsites_members_menu() {
if( is_user_logged_in() ) {
add_filter( 'wp_nav_menu_args', 'logged_in_nav_menu' );
}
}
/**
* Display Different Nav Menu For Logged in Users
* @author Brad Dalton
* @example http://wpsites.net/web-design/members-nav-menu-logged-in-members/
*/
function logged_in_nav_menu( $args ) {
if ( $args['theme_location'] == 'primary' ) {
$args['menu'] = 'Primary Navigation - Members';
}
if ( $args['theme_location'] == 'secondary' ) {
$args['menu'] = 'Secondary Navigation - Members';
}
return $args;
}
// https://sridharkatakam.com/conditional-display-primary-secondary-navigation-menus-sidebars-genesis/
// To display a custom menu named “Primary Navigation – Members” in Primary Navigation location for logged in users
add_action( 'init', 'wpsites_members_menu' );
function wpsites_members_menu() {
if( is_user_logged_in() ) {
add_filter( 'wp_nav_menu_args', 'logged_in_nav_menu' );
}
}
/**
* Display Different Nav Menu For Logged in Users
* @author Brad Dalton
* @example http://wpsites.net/web-design/members-nav-menu-logged-in-members/
*/
function logged_in_nav_menu( $args ) {
if ( $args['theme_location'] == 'primary' ) {
$args['menu'] = 'Primary Navigation - Members';
}
return $args;
}