parent_dropdown( int $default_page, int $parent_page, int $level, int|WP_Post $post = null ): void|false
Prints out option HTML elements for the page parents drop-down.
Parameters
Return
void|false Void on success, false if the page has no children.
Source
File: wp-admin/includes/template.php
.
View all references
function parent_dropdown( $default_page = 0, $parent_page = 0, $level = 0, $post = null ) {
global $wpdb;
$post = get_post( $post );
$items = $wpdb->get_results(
$wpdb->prepare(
"SELECT ID, post_parent, post_title
FROM $wpdb->posts
WHERE post_parent = %d AND post_type = 'page'
ORDER BY menu_order",
$parent_page
)
);
if ( $items ) {
foreach ( $items as $item ) {
// A page cannot be its own parent.
if ( $post && $post->ID && (int) $item->ID === $post->ID ) {
continue;
}
$pad = str_repeat( ' ', $level * 3 );
$selected = selected( $default_page, $item->ID, false );
echo "\n\t<option class='level-$level' value='$item->ID' $selected>$pad " . esc_html( $item->post_title ) . '</option>';
parent_dropdown( $default_page, $item->ID, $level + 1 );
}
} else {
return false;
}
}
Changelog
Version | Description |
---|---|
4.4.0 | $post argument was added. |
1.5.0 | Introduced. |