I am trying to fetch all direct children of a page. But I am getting all children and grand children as well. Any ideas?
PHP Source:
$args = array(
'child_of' => $post->ID,
'parent ' => $post->ID,
'hierarchical' => 0,
'sort_column' => 'menu_order',
'sort_order' => 'asc'
);
$mypages = get_pages( $args );
foreach( $mypages as $post )
{
$post_tempalte = the_page_template_part();
get_template_part( 'content' , $post_tempalte );
}
My $args
should be correct according to the documentation, but it’s totally ignoring parent
and hierarchical
.
My page structure is as follows:
Parent
-Child 1
-Child 2
–Child 1 to child 2
–Child 2 to child 2
-Child 3
And I only want to get child 1
, child 2
and child 3
.
Please check the parameter ‘parent’. It seems there is a space after the name.
With the parameter ‘depth’ of the “wp_list_pages” or the “get_pages” function, we can define how many levels do we want to retrieve. So here, I will display all the first child level of the current page.