Make WordPress Core

Opened 3 years ago

Last modified 2 weeks ago

#18282 reviewing defect (bug)

Issue with admin page hierarchy in Menu admin

Reported by: hcceast Owned by:
Milestone: Awaiting Review Priority: normal
Severity: major Version: 3.2.1
Component: Menus Keywords: needs-patch
Focuses: Cc:


Under Appearance > Menus in the left column under Pages, if I have more than 50 pages, the hierarchy view gets messed up. The issue seems to be related to paginate.

If I change the "50" on lines 589 and 809 of wp-admin/includes/nav_menu.php to "955" the hierarchal admin menu works with 50+ pages.

Attached are two XML files. One contains 50 pages and the other contains 53 pages. I've loaded them into fresh installs of 3.2.1 using the twenty eleven theme and no plugins.

Paginate is great if it works right, if it won't work, just increase the number per page to something very high and people can scroll. I'd rather scroll than not have hierarchy work right.

Link to 50 page XML -- http://cloud.hcc.me/0g3X3O310s3l3i2N363n

Link to 53 page XML -- http://cloud.hcc.me/302e0c391A14193m2V2e

Pastebin of wp-admin/includes/nav_menu.php -- http://pastebin.com/0FRAmMkS

Attachments (4)

page xml .zip (7.1 KB) - added by hcceast 3 years ago.
XML Page Files
Screen shot 2011-07-28 at 10.03.43 AM.png (30.6 KB) - added by hcceast 3 years ago.
Screen shot of admin menu (all subs should be under parents)
18282-disable-nav-menu-pagination.patch (621 bytes) - added by Aries-Belgium 11 months ago.
Patch to work around nav menu pagination
preserve-page-and-taxonomy-hierarchy.php (1.9 KB) - added by SergeyBiryukov 2 weeks ago.

Download all attachments as: .zip

Change History (29)

hcceast3 years ago

XML Page Files

hcceast3 years ago

Screen shot of admin menu (all subs should be under parents)

comment:2 SergeyBiryukov2 years ago

Taxonomies are also affected.

Closed #19837 and #20351 as duplicates.

comment:3 Marventus2 years ago

  • Cc frandeazevedo@… added

comment:4 Marventus2 years ago

I suspect the $depth parameter could be failing during pagination.
I'll take a look into it see if I can find anything.

Last edited 2 years ago by Marventus (previous) (diff)

comment:5 Whissi23 months ago

  • Cc Whissi added
  • Version changed from 3.2.1 to 3.3.2

Is anybody working on this? The current release (3.3.2) is still affected.

comment:6 JustinSainton23 months ago

  • Version changed from 3.3.2 to 3.2.1

The version tag is used for when the issue was introduced, not the most recent version it occurs in.

comment:7 dmaras22 months ago

  • Version changed from 3.2.1 to 3.4


i cant find this line in version 3.4 and i have same issue...

I have it i was looking in wp-includes/nav-menu.php

Last edited 22 months ago by dmaras (previous) (diff)

comment:8 SergeyBiryukov22 months ago

  • Version changed from 3.4 to 3.2.1

Version number indicates when the bug was initially introduced/reported.

comment:9 SergeyBiryukov15 months ago

#23286 was marked as a duplicate.

comment:10 SergeyBiryukov15 months ago

  • Owner Andrew Smith deleted
  • Status changed from new to reviewing

comment:11 energy0m15 months ago

  • Cc marc@… added
  • Severity changed from major to blocker

When is this ticket going to be resolved? is there a patch? This is core functionality keeping my project from launching which is over 18months old. not cool. I can put in pages manually but my client cant manage them and as it turns out they have a very deep sitemap to place in the menu's section.

so again.. when is this to be resolved?

comment:12 Marventus15 months ago

  • Severity changed from blocker to major

@energy0m: the issue will be resolved when... someone takes the time to resolve it. It seems Sergey is looking into it, but if you are in a rush, I suggest you contact him and - here's a crazy idea! - offer him to help. In the meantime, I can only suggest you take a chill pill and read up on what Open Source is all about: http://en.wikipedia.org/wiki/Open_source.

comment:13 energy0m15 months ago

How can I help him when I don't know enough about PHP to resolve the problem?

comment:14 SergeyBiryukov15 months ago

I'm not actually looking into it yet, I've just removed the previous owner so that someone else could take over this ticket. Feel free to submit a patch.

comment:15 helen15 months ago

This is essentially a visual bug - the hierarchy is not actually altered, and since nav menus specifically do not rely on the page hierarchy, nothing is broken beyond the visual. Yes, it is a bug and yes, it is frustrating, but it shouldn't be something that holds up a launch.

comment:16 SergeyBiryukov11 months ago

#24436 was marked as a duplicate.

comment:17 allergicvegetarian11 months ago

This issue also effects categories as well, when you are creating a menu. I'm making a navigation menu that isn't on a specific page.

Obviously, this isn't going to get fixed soon, given a computer programmers time for open source projects is directly related to the amount of extra work their real job requires them to program "for free" under the heading of "salaried" (work 60 hours, get paid for 40). LOL I fully support the Computer Programmer in this, and in no way, am I dissing the programmer. I'm also against such abuse of programmers.

Last edited 11 months ago by allergicvegetarian (previous) (diff)

Aries-Belgium11 months ago

Patch to work around nav menu pagination

comment:18 Aries-Belgium11 months ago

The issue is indeed the pagination that breaks the hierarchy of the pages. It's possible that some child pages aren't on the same page/section than the parent page which confuses the Walker.

In the attachment a patch for a quick workaround by disabling the pagination for the "All"-tab. When I find the time I will see if I can come up with a solution where the pagination doesn't break the hierarchy but for now this patch also works.

comment:19 Aries-Belgium11 months ago

  • Cc Aries-Belgium added

comment:20 moraleida.me9 months ago

  • Cc moraleida.me added

comment:21 SergeyBiryukov7 months ago

#25262 was marked as a duplicate.

comment:22 alettieri5 months ago

  • Cc alettieri added

comment:23 SergeyBiryukov2 months ago

#27143 was marked as a duplicate.

comment:24 follow-up: davidfhannes7 weeks ago

I tried the patch to no avail:

	$posts = $get_posts->query( array_merge( $args, array( 'nopaging' => true ) ) ); 

I really need assistance on this issue. This is my issue at hand:

Screen shot:

Last edited 2 weeks ago by SergeyBiryukov (previous) (diff)

comment:25 in reply to: ↑ 24 SergeyBiryukov2 weeks ago

Replying to davidfhannes:

I tried the patch to no avail:

That patch is for pages (and other hierarchial post types), not for taxonomies.

I've created a workaround plugin to preserve hierarchy for both post types and taxonomies:

Note that it only affects "View All" tab, not "Most Recent" or "Most Used".

Note: See TracTickets for help on using tickets.