Listing Child Pages in a Certain Order?

Based on your comments here is another option , using wp_list_pages and without having to work with arrays and pulling content manually, I’m leaving out a bunch of the options, just the bare essentials.

<ul>
<?php
  $priority_pages="5,1,3,7";
  wp_list_pages(array('include' => $priority_pages);
  wp_list_pages(array('exclude' => $priority_pages);
?>
</ul>

since, wp_list_pages, just gives you the <li> elements, you can use this function a couple of times to pull all the pages you need. So now you can only get the pages you want out the top, and then pull in the rest. You can use all the rest of the options to sort and filter the tree like normal (Note, I like using arrays instead of the string, code looks cleaner IMO).

Read the codex page for wp_list_pages for more options

To get a list of ID’s with what you want.

<?php
  $my_wp_query = new WP_Query();
  $all_wp_pages = $my_wp_query->query(array('post_type' => 'page'));

  $parent = $wp_query->$post-ID;
  $children = $get_page_children($parent, $all_wp_pages);
?>

What we have now is an array in $children with the information we need. What I would at this point is loop through $children looking for the filed post_title to equal what you want, and store that ID. With these store as an array, you would be able to use those with the include, exclude functions of wp_list_pages

So not 100% complete, but it will get you started

<?php
  $priority_pages_a = array();
  foreach($children as $child) {
    if(strpos($child->post_title,"Summary") {
      $priority_pages_a[0] = $child->ID;
    } elseif (strpos($child->post_title,"Info") {
      $priority_pages_a[1] = $child->ID;
    }
  }

  $priority_pages = implode(",",$priority_pages_a);

?>

What we’ve done is created an array that puts the ID into the array order that you want. Then implodes that into a comma separated string, for which you can use the wp_list_pages to get the ones you want / need.

The get_page_children doesn’t touch the database, but the get all pages does :/ so it’s a wash.

I haven’t tested this code altogether, but it should work.

Also note there is a get_page_by_title, so if your titles are exactly ‘Summary’ then you can use it to get the ID, but in your question you said contains, so I went with this route instead.