通过检查文件/wp-admin/nav-menus.php 我们可以看到这些元框:

渲染时使用:
<?php do_meta_boxes( \'nav-menus\', \'side\', null ); ?>
文件
/wp-admin/includes/nav-menu.php 包含相应的
add_meta_box() 调用,然后我们可以构造相关的删除代码:
function custom_remove() {
remove_meta_box(\'nav-menu-theme-locations\', \'nav-menus\', \'side\');
remove_meta_box(\'add-custom-links\', \'nav-menus\', \'side\');
remove_meta_box(\'add-post\', \'nav-menus\', \'side\');
remove_meta_box(\'add-page\', \'nav-menus\', \'side\');
remove_meta_box(\'add-category\', \'nav-menus\', \'side\');
}
add_action(\'admin_head-nav-menus.php\', \'custom_remove\');
例如,我们可以使用
admin_head-nav-menus.php 操作,因为它是在呈现这些元框之前调用的。
如果您有一个自定义的帖子类型(或自定义分类法),那么您可以使用
remove_meta_box( \'add-xxx\' , \'nav-menus\' , \'side\' );
在哪里
xxx 是对应的名称。
您可以进一步查看这些功能wp_nav_menu_setup(), wp_nav_menu_post_type_meta_boxes() 和wp_nav_menu_taxonomy_meta_boxes() 查看如何添加元框。