Dada la edad de esta pregunta, quería proporcionar una respuesta actualizada para cualquier persona que se tropiece con ella.
Sugeriría evitar query_posts. Aquí está la alternativa Prefiero:
$child_pages = new WP_Query(array(
'post_type' => 'page', // set the post type to page
'posts_per_page' => 10, // number of posts (pages) to show
'post_parent' => <ID of the parent page>, // enter the post ID of the parent page
'no_found_rows' => true, // no pagination necessary so improve efficiency of loop
));
if ($child_pages->have_posts()) : while ($child_pages->have_posts()) : $child_pages->the_post();
// Do whatever you want to do for every page. the_title(), the_permalink(), etc...
endwhile; endif;
wp_reset_postdata();
Otra alternativa sería utilizar el filtro pre_get_posts sin embargo, esto sólo se aplica en este caso si es necesario modificar el circuito primario. El ejemplo anterior es mejor cuando se usa como un bucle secundario.
Más información: http://codex.wordpress.org/Class_Reference/WP_Query
Si se trata de niños páginas de la página actual se puede usar 'get_the_ID()' si usted ha llamado previamente 'the_post()'. – jezmck