We wanted to use this plugin for a project, but I didn’t like the behavior. If you chose option 1, display all sub pages, it would show the entire site, which was too much. If you chose option 3, display strictly related sub pages, it would only show the top level sub pages. Option 2 was, I believe, broken in that it had the same behavior as option 3. I went ahead and modified it to display all the subpages under the page that you are currently on. I added these two lines after line 156 of version 1.6.3:
global $wp_query;
$current_page = &get_post($wp_query->get_queried_object_id());
I added the following between lines 159 and 160 of the original:
$curr_page = &$page;
$hierarchy = array();
$hierarchy[] = $curr_page->ID;
while($curr_page->post_parent) {
$curr_page = &get_post($curr_page->post_parent);
$hierarchy[] = $curr_page->ID;
}
And I modified line 167 of the original by changing the following:
Original:
!in_array($page->ID, $currpage_hierarchy))
Modified:
!(in_array($current_page->ID, $hierarchy) ||
in_array($page->ID, $currpage_hierarchy)))
Sorry if it’s not elegant, but I was in a rush.