Add Custom Post Type to Nav Menus

To add a Custom Post Type to the Appearance > Menus section of the backend, add show_in_nav_menus => true to the Post Type args.

The registered Post Type will look like this in functions.php

$labels = array(
		'name'               => 'Destination',
		'singular_name'      => 'Destination',
		'menu_name'          => 'Destinations',
		'name_admin_bar'     => 'Destination',
		'add_new'            => 'Add New',
		'add_new_item'       => 'Add New Destination',
		'new_item'           => 'New Destination',
		'edit_item'          => 'Edit Destination',
		'view_item'          => 'View Destination',
		'all_items'          => 'All Destinations',
		'search_items'       => 'Search Destinations',
		'parent_item_colon'  => 'Parent Destinations:',
		'not_found'          => 'No destinations found.',
		'not_found_in_trash' => 'No destinations found in Trash.'
	);

	$args = array(
		'labels'             => $labels,
        'description'        => 'A destination for trips to go to',
		'public'             => true,
		'publicly_queryable' => true,
		'show_ui'            => true,
		'show_in_menu'       => true,
		'show_in_nav_menus'  => true, // where the magic happens
		'query_var'          => true,
		'rewrite'            => array( 'slug' => 'destination' ),
		'capability_type'    => 'post',
		'has_archive'        => true,
		'hierarchical'       => false,
		'menu_position'      => null,
		'supports'           => array( 'title', 'editor', 'author', 'thumbnail', 'revisions' ),
		'taxonomy' 			 => array('destination_category'),
	);

	register_post_type( 'destination', $args );

The Post Type can then be found in Appearance Menus beneath the Pages and Posts defaults.

If you do not see the new Post Type, expand Screen Options and check it to show it in the sidebar.

Source.

2 thoughts on “Add Custom Post Type to Nav Menus

  1. This tutorial helped me a lot. Thank you for sharing!
    I already registered the post type after I had created it with a WordPress plugin, but I couldn’t find the custom post type in the navigation menu. Then, I found that I should enable them in the ‘Screen Options’.

Leave a Reply

katherine as a flat graphic icon

About Me

I’m an African / Ojibwe First Nations Web Developer living in Winnipeg, Manitoba.

Visit the Tips and Blog to see what I’m working on.