Creates meta boxes for any post type menu item.
Description
.
Source
function wp_nav_menu_post_type_meta_boxes() {
$post_types = get_post_types( array( 'show_in_nav_menus' => true ), 'object' );
if ( ! $post_types ) {
return;
}
foreach ( $post_types as $post_type ) {
/**
* Filters whether a menu items meta box will be added for the current
* object type.
*
* If a falsey value is returned instead of an object, the menu items
* meta box for the current meta box object will not be added.
*
* @since 3.0.0
*
* @param WP_Post_Type|false $post_type The current object to add a menu items
* meta box for.
*/
$post_type = apply_filters( 'nav_menu_meta_box_object', $post_type );
if ( $post_type ) {
$id = $post_type->name;
// Give pages a higher priority.
$priority = ( 'page' === $post_type->name ? 'core' : 'default' );
add_meta_box(
"add-post-type-{$id}",
$post_type->labels->name,
'wp_nav_menu_item_post_type_meta_box',
'nav-menus',
'side',
$priority,
$post_type
);
}
}
}
Hooks
- apply_filters( ‘nav_menu_meta_box_object’,
WP_Post_Type|false $post_type ) Filters whether a menu items meta box will be added for the current object type.
Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.