Make WordPress Core

Opened 15 years ago

Closed 13 years ago

Last modified 13 years ago

#17015 closed defect (bug) (invalid)

wp_list_pages incorrect hierarchy when using include and sorting by title

Reported by: JohnColvin Owned by:
Priority: normal Milestone:
Component: Template Version: 1.5
Severity: minor Keywords:
Cc: Focuses:

Description (last modified by SergeyBiryukov)

I am using wp_list_pages to create a page hierarchy. I only want the grandchildren of specific pages, so I generate a list of page IDs to send to wp_list_pages. I sort them by page title. The hierarchy is not handled correctly when a grandchild's title sorts before its parent.

How it should come out:

About Us
 -Board of Directors
   --Annual Reports
 -FAQ
 -Initiatives
  --Ohio...
  --Reach

How it comes out:

About Us
 -Annual Reports
 -Board of Directors
 -FAQ
 -Initiatives
  --Ohio...
  --Reach

I've moved things around and verified that this sorts correctly:

About Us
 -Board of Directors
   --ZZZAnnual Reports
 -FAQ
 -Initiatives
  --Ohio...
  --Reach

If one grandchild has a sort order above its parent, all the grandchildren are pulled above the parent in the hierarchy. For example:

About Us
 -Board of Directors
   --ZZZAnnual Reports
 -FAQ
 -AAAAOhio...
 -Reach
 -Initiatives

Change History (5)

#1 @solarissmoke
15 years ago

exclude has similar weirdness, maybe the same root cause: #10902

#2 @c3mdigital
13 years ago

  • Resolutioninvalid
  • Status newclosed
  • Version 3.11.5

I don't fully understand your expectations. If you only want the grandchildren of certain pages then why would you be including their parents? Im going to close please reopen if you feel this is still an issue.

#3 @SergeyBiryukov
13 years ago

  • Component GeneralTemplate
  • Description modified (diff)

#4 @SergeyBiryukov
13 years ago

  • Milestone Awaiting Review

#5 @SergeyBiryukov
13 years ago

Could not reproduce in trunk. My steps:

  1. Created seven pages with the hierarchy from the first example.
  2. Passed the list of page IDs to wp_list_pages() via include.
  3. Got the same output as in the first example.
Last edited 13 years ago by SergeyBiryukov (previous) (diff)
Note: See TracTickets for help on using tickets.