[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