[wp-trac] [WordPress Trac] #25698: Speed up slow Menus Panel for menus with many items
WordPress Trac
noreply at wordpress.org
Sun Oct 27 17:27:07 UTC 2013
#25698: Speed up slow Menus Panel for menus with many items
-------------------------------------+------------------------------
Reporter: sevenspark | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Menus | Version:
Severity: normal | Resolution:
Keywords: has-patch needs-testing |
-------------------------------------+------------------------------
Comment (by sevenspark):
Sorry for the late reply, had some emergency tasks to deal with in the
last 48 hours that required my full attention.
My apologies for the duplicate! I did search for similar tickets, but
seem to have missed that one. Sorry about that!
Thank you for writing the core patch - while I would have been happy to
attempt it, I'm sure it's more efficient that you've written it and made
sure it's done right the first time, as I have not written a core patch
before.
I did look into the idea of marking only certain items for refresh when I
initially analyzed the problem. I believe the logic ended up getting
fairly convoluted when you consider the cascading effects that moving and
adding items have. I believe part of the issue is that the menu items
aren't in a true tree structure (child items are visually indented, but
not actually children of the parent menu item within the DOM), so
traversing the one-dimensional "tree" of menu items actually requires a
fair bit of processing - I'm not sure if it actually saves anything in the
end. That's why I ended up landing on the 'lazy' solution which, while
not perfectly efficient, gave the biggest win with the smallest processing
overhead.
I did test the plugin with a keyboard, and that (rather non-rigorous) test
worked well. Unfortunately, I don't know enough about screen-reader and
other types of accessibility to know if and how they might be affected, or
what corner cases might crop up.
Thanks!
--
Ticket URL: <http://core.trac.wordpress.org/ticket/25698#comment:4>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software
More information about the wp-trac
mailing list