Skip to content

Instantly share code, notes, and snippets.

@bradfranklin
Created August 16, 2019 19:18
Show Gist options
  • Save bradfranklin/9efe2adc4c0ed622a0cee3fb0d7aad06 to your computer and use it in GitHub Desktop.
Save bradfranklin/9efe2adc4c0ed622a0cee3fb0d7aad06 to your computer and use it in GitHub Desktop.
Add a menu conditionally to a specific wordpress custom post type only
// Adding a menu conditionally only to a CPT to be centered below the header (for now)
//
// https://codex.wordpress.org/Function_Reference/is_post_type_archive
//
// https://www.wpbeginner.com/wp-themes/how-to-add-custom-navigation-menus-in-wordpress-3-0-themes/
function j66_menu_output_cpt_ambassador() {
$menu_cpt_ambassador .= wp_nav_menu( array(
'menu' => 'CPT Ambassador Menu', // Do not fall back to first non-empty menu. Was Primary Menu
'theme_location' => 'cpt-ambassador-menu',
'fallback_cb' => '__return_false' // Do not fall back to wp_page_menu()
)
);
$menu_cpt_ambassador .= '</div>';
return $menu_cpt_ambassador;
}
if ( is_post_type_archive( 'ambassadors' ) ) {
add_action( 'generate_after_header', 'j66_menu_output_cpt_ambassador' );
}
function j66_cpt_ambassador_menu() {
register_nav_menu('cpt-ambassador-menu',__( 'CPT Ambassador Menu' ));
}
add_action( 'init', 'j66_cpt_ambassador_menu' );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment