此元框打印有page_attributes_meta_box
并使用以下代码生成用于选择父项的选择字段:
if ( is_post_type_hierarchical( $post->post_type ) ) :
$dropdown_args = array(
\'post_type\' => $post->post_type,
\'exclude_tree\' => $post->ID,
\'selected\' => $post->post_parent,
\'name\' => \'parent_id\',
\'show_option_none\' => __(\'(no parent)\'),
\'sort_column\' => \'menu_order, post_title\',
\'echo\' => 0,
);
$dropdown_args = apply_filters( \'page_attributes_dropdown_pages_args\', $dropdown_args, $post );
$pages = wp_dropdown_pages( $dropdown_args );
if ( ! empty($pages) ) :
?>
<p class="post-attributes-label-wrapper"><label class="post-attributes-label" for="parent_id"><?php _e( \'Parent\' ); ?></label></p>
<?php echo $pages; ?>
正如您所看到的功能
wp_dropdown_pages
在那里使用,您可以使用
page_attributes_dropdown_pages_args
筛选以修改其调用的参数。
因此,假设您只需要顶级页面:
function wpse_modify_parent_dropdown_args($args, $post) {
$args[\'depth\'] = 1;
return $args;
}
add_filter( \'page_attributes_dropdown_pages_args\', \'wpse_modify_parent_dropdown_args\', 10, 2 );