Deprecated: Assigning the return value of new by reference is deprecated in /nfs/c03/h06/mnt/47169/domains/ on line 186

Deprecated: Assigning the return value of new by reference is deprecated in /nfs/c03/h06/mnt/47169/domains/ on line 108

Deprecated: Assigning the return value of new by reference is deprecated in /nfs/c03/h06/mnt/47169/domains/ on line 171

Deprecated: Assigning the return value of new by reference is deprecated in /nfs/c03/h06/mnt/47169/domains/ on line 484

Deprecated: Assigning the return value of new by reference is deprecated in /nfs/c03/h06/mnt/47169/domains/ on line 581
Page Menu Plugin « Community

Welcome, guest!

Feel free to read the blog, browse for themes, or join the club.

The community forums are currently being phased out. At the end of February or early March 2012, you will no longer be able to post here. This is because the entire site is being restructured. Please use the main forums for discussions.

Page Menu Plugin

  1. I've mentioned a few times that I'd like to develop a page menu plugin, but I still haven't decided on whether to build it yet. There are some technical hurdles with building such a plugin.

    So, I'm opening up this thread as a central place for brainstorming. I'd at least like to get some ideas down to see where we stand.

    Basic menu

    It would be fairly easy to add all the options from the Pages widget of the Hybrid theme over to an options page.

    The plugin would run a filter on wp_page_menu(). The arguments for that particular function are:

    • depth
    • sort_column
    • sort_order
    • show_date
    • date_format
    • child_of
    • include
    • exclude
    • exclude_tree
    • hierarchical
    • meta_key
    • meta_value
    • authors
    • link_before
    • link_after

    For an effective menu plugin one would want at least a nice UI for the include/exclude (though this could become unruly with a lot of pages).

    Would it be best to allow to add checkboxes to include pages or exclude pages from the menu? Which seems more intuitive? I might have to consider the technical/coding aspects of this in the final decision though (it depends on which would take less code and PHP processing).

    Anyway, I'll stop here. I've got some ideas I might play around with. If you have ideas and feedback, feel free to post theme here.

    Compatibility across themes

    This wouldn't be a Hybrid-specific plugin. It'd work with any theme that uses wp_page_menu() to loads its menu, so you'd be able to use it with those themes too.

  2. Hi Justin,
    I LOVE the ability to use check boxes here, so clients easily control the menu themselves.
    Also I like the feature that some of the other menu plugins offers, where you can assign the menu order with a number (or even Ajax "drag & drop"...?)
    Finally it could be so nice to have several menu plugins set up on the same page, I don't know if the new widgets in Wordpress 2.8 allows that by default?

    Thanks a lot for looking into this!

  3. Its hard to give feedback on the menu plugin with the information you provide. There are lots of menu plugins out there, but none thats really great.

    I do like the way Page Mash handles pages, and My Page Order which is built into Ryan Hellers new menu plugin is also intuitive to use.

    a nice UI for the include/exclude (though this could become unruly with a lot of pages)

    My Page Order handles lots of pages with little problems. People doesnt use 100 pages on the same level do they, its more 1- 15 isnt it?

    However I think the most important for a new menu plugin is that its easy to use for end-users, but with some flexibility for the theme customizer by altering settings or code.

    Page sorting should be handled with drag-n-drop. Exclusion should ideally be handled both by a exclusion list in settings like the Pages widget, and a check-box in the Pages write page. It should be possible to decide to include or not when writing the page, without going to menu settings, and it should be possible to include/exclude pages when working with page sorting.

    PageMash does most of what I want when it comes to exclusion and ordering, and its possible to do like Ryan Heller and build on a sorting plugin in your Menu Plugin ? Its already using wp_page_menu()

    Once your plugin is ready though, you may make a service like this one for menu css formatting, accessible in the membership pages or free:

    A Page Menu solution should support all 3 steps of the Menu workflow:

    1. Output of menu list code
    2. Execution/inclusion/sorting ( + customization ? )
    3. Menu styling ( css editor or css templates )

  4. May the plugin support more than one menu ?

  5. How about an option to replace the other type of menu with the wp_page_menu() function?

    In a dream world, I could add a class to specific menu items with it. This is a specific need I can't find an answer to at the moment.

    I would also like to be able to add links without having to create dummy pages and use the page links to plugin.

    Right now I use 3-4 plugins on EVERY site to control the menu, one for exclusion, one for page-links-to, one for the name of the anchor, and sometimes one for page order. I'd love to only use one.

    I know what every you choose to add to it, I'll be happy.

  6. Here's another plugin to try if anyone wants to give it a go:

    I'm not sure how good it is. Let me know if you like it.

  7. Too buggy yet, at least the menu editor, and sometimes the js backend UI, but it seems powerful and have lots of options.

    I do like the drag-n-drop interface in the Menu contents and the custom code option.
    Superfish settings are a plus. Page ordering as mentioned above is nice, but its placed in the advanced tab which seems a bit odd. UI design is pretty much like the new widgets UI design which is good, makes it "fit in" well in the backend.

    WP-Menu is also one to watch once admin settings gets added.

  8. I had just looked at's offering the other day - although my analysis was not clearly as in-depth as John's. Definitely it's "feature full".

    For myself - I find the filter-hooking method a tad "oblique" and less than self-evident. Until I landed here - I had never seen it done that way...A plugin would really add something in my view - as have all of the other recent contributions you have made toward "building a better mousetrap".

    I'd like to promote the idea concept of potentially having ANY of your new plugin development provide Hybrid-specific capabilities - either during configuration or execution - or both.. For example, maybe that once configured - there could be some means to export the configuration in an XML form (or something else) so that it could be "reloaded into another Hybrid-based environment which would replicate all of the settings. Alternatively, perhaps when loaded into a Hybrid frame-based environment - Maybe the configuration could be done via some ajax-driven drag-and-drop interface.

    Second, it seems that the more capable and selective the configuration is - especially with things like menus - the configurations becomes awkward and complex for end-users - largely because the capabilities integrate "deeper" into WordPress, making fewer assumptions.

    Maybe the solution for this is to provide some sort of "tiered" configuration - based on the sophistication of the user - Either self-selected - or alternatively - Maybe - all plugins could "look for" the presence of some other Hybrid construct (maybe a designer/developer plugin? or mode?) that would enable the more extensive capabilities at configuration..

    Maybe it would then be possible to lock-down the configuration - so that the end-users could make cosmetic changes - but not trash their sites - or correspondingly - the developer/designer could "unload" their plugin after the configuration was complete - that would remove capabilities that would be otherwise get inexperienced users in difficulty. I think it would be great to have a drag-and-drop interface for both sets of users.

    Alternatively you could have "fat" or "skinny" versions of the same plugin - one with a great and expanded configutation mode - that would produce configuration information - and another "skinny" version the would simply execute based on the previously instantiated configuration information. Maybe the "skinny" ones work on ALL platforms and the "fat" development versions only work on a Hyrid-based theme - so that if you want the advanced capabilities configured - you must configure it "under Hybrid" - but once done, it will execute the same in ALL themes.

    I think that either of these basic ideas will provide incentives for users to move in your direction - either toward your plugins - or theme framework - or both... Things should be "easier" or "better" using Hybri - But that means different things depending on whether you're and end-user or a designer/developer. Designer-developers want deeper, more feature-full implementations - that expose more WordPress capabilities - and inexperienced users want the flexibility of making changes - but without the risk of "messing things up". I also think it would promote a constructive dialog between end-users and develpoer/designers in that they could exchange Hybrid configuratons with would be guaranteed (by design) to work correctly without the latter having to have direct and contemporaneos access to the end-user's site.

    Finally, I'd like to see all of the plugins support properly degradeable Ajax-JQuery in some manner. I'd like collapsible lists or other capabilities to be configurable in the plugin itself - and not require yet anther "piggy-based" plugin to alter the behavior of the former. Since you control the basic styles under Hybrid - that should be possible - I imagine.

    I'd like to see "Hybrid" branded WordPress components work "better" than their counterparts - by design - Such that they are preferred.... I think there is some room to add something to the basic architecture that will be of value to each of the already identified constituencies...Something that WordPress itself has largely avoided - leaving it to "Ace" developers to sort-out.

  9. I love the drag and drop to build the menu idea. I have to have the ability to have multiple occurrences of on dragged item though, for instance, I need some pages, then some categories, then more pages. I'd like all of the options from wp_list_pages and wp_list_categories plus the ability to custom code might be nice.

    I think not being able to change the category order in the same was as changing page order is a complete oversight on worpress' part, so build that in, somehow. Give each link a unique class and let me style it in my css. Keep it as simple as possible while offering all things required for any page/category menu.

    I'd actually prefer to see this in Hybrid Settings instead of a plugin, but I understand your wanting it in a plugin.


You must log in to post.

Topic Info