Plugin Directory

Changeset 1362507


Ignore:
Timestamp:
03/02/2016 11:09:03 AM (10 years ago)
Author:
wizzud
Message:

commit 3.2.4

File:
1 edited

Legend:

Unmodified
Added
Removed
  • custom-menu-wizard/trunk/readme.txt

    r1336505 r1362507  
    55Requires at least: 3.6
    66Tested up to: 4.4
    7 Stable tag: 3.2.3
     7Stable tag: 3.2.4
    88License: GPLv2 or Later
    99
     
    770770Yep, 'fraid so :
    771771
    772 1. The widget will only recognise one "current" item (prior to v2.0.2 it was the last one found; as of v2.0.2, it's the first one encountered, but v3.1.5 add a switch that lets you opt for the last one found). It is perfectly possible to have more than one menu item marked as "current", but if CMW has been configured to filter on anything related to a "current menu item" it can only choose one. The simplest example of multiple "current" items is if you add the same page to a menu more than once, but any other plugin that adds and/or manipulates menu items could potentially cause problems for CMW.
     7721. The widget will only recognise one "current" item (prior to v2.0.2 it was the last one found; as of v2.0.2, it's the first one encountered, but v3.1.5 adds a switch that lets you opt for the last one found). It is perfectly possible to have more than one menu item marked as "current", but if CMW has been configured to filter on anything related to a "current menu item" it can only choose one. The simplest example of multiple "current" items is if you add the same page to a menu more than once, but any other plugin that adds and/or manipulates menu items could potentially cause problems for CMW.
    7737732. The widget's "assist" uses jQuery UI's Dialog, which unfortunately (in versions 1.10.3/4) has a *really* annoying bug in its handling of a draggable (ie. when you drag the Dialog's title bar to reposition it on the page) when the page has been scrolled. It is due to be fixed in UI v1.11.0, but meantime I have defaulted the Dialog to fixed position, with an option to toggle back to absolute : it's not perfect but it's the best compromise I can come up with to maintain some sort of useability.
    774774
     
    782782Please note that simply reporting "It doesn't work" is not
    783783the most useful of feedbacks, and is unlikely to get a response other than, possibly, a request for more details.
     784
     785I should also point out that any other plugin can change any menu, at any time, either before or after this widget does it stuff (even
     786prevent it running at all!), so it's possible that the problem lies somewhere other than CMW.
     787
     788= Where is the styling of the output coming from, and how do I change it? =
     789The widget does not supply any output styling (at all!). This is because I have absolutely no idea where you are going to place either the
     790widget (sidebar, footer, header, ad-hoc, etc?) or the shortcode (page content, post content, widget content, custom field, etc?) and everyone's
     791requirements for styling are likely to be different ... possibly even within the same web page's output. So, all styling is down to your theme,
     792and if you wish to modify it you will need to add to (or modify) your theme's stylesheet.
     793
     794The safest way to do this is via a [child theme](https://codex.wordpress.org/Child_Themes), so that any
     795changes you make will not be lost if/when the main theme gets updated.
     796The best way to test your changes is by utilising the developer capabilities that are available in most
     797modern browsers (personally, I could not do without Firefox and the Firebug extension!) and dynamically
     798applying/modifying styles, possibly utilising the custom classes that the
     799widget applies to its output, or the Container options for a user-defined id or class.
     800
     801= Why is there no (or, How do I get...) indentation on my hierarchical menu? =
     802Firstly, see the answer above, re: styling of the output.
     803
     804Any output styling comes from your theme (or possibly some other plugin, but definitely *not* CMW).
     805
     806If other nested lists are displayed with indentation then it is likely (but not guaranteed) that there is a
     807class that can be applied to the CMW output that may result in the desired effect. It is always worth
     808checking out WordPress's own Nav Menu widget, on a menu that has sub-menus : if that has indentation then
     809check the classes *it* has and try them on CMW (assuming that they're not already there!). If it doesn't
     810have indentation then you're probably going to have to add your own styled class(es) to your theme, and
     811then apply them to CMW.
     812
     813Note that quite a few themes "reset/standardise the CSS", by removing all
     814padding and margins from lists : trouble is, some of them don't then provide any means for indenting
     815nested lists.
     816Also, please be aware that any CSS rules that *are* provided *may* be location-specific.
     817So, for example, a class may indent nested lists when they are in a sidebar widget area, but not when
     818they're in a footer widget area or inserted within content (using a shortcode).
     819
     820Purely as an example, [re-]applying indentation to nested unorder lists (ULs) could be as fundamental as ...
     821
     822`ul ul { margin-left: 1em; }`
     823
     824...however, I have found that things a generally never that straightforward, particularly when menus with
     825links in them are involved, so I'm afraid you might to have to experiment a bit.
     826
     827= How can I create a horizontal menu? =
     828Firstly, see the answer above, re: styling of the output.
     829
     830Any output styling comes from your theme (or possibly some other plugin, but definitely *not* CMW).
     831
     832If you simply want all the menu items to flow horizontally across the page then you could start with
     833something along the lines of...
     834
     835`.menu-widget {
     836    list-style-type: none;
     837    margin: 0;
     838    padding: 0;
     839}
     840.menu-widget li {
     841    display: inline-block;
     842    margin: 0 2em 0 0;
     843}`
     844
     845This is purely an *example*.
     846
     847I've used a class : you may want to change/add to the class, or swap it for an id.
     848There are a number of other ways to do it - especially if you have multiple levels, or you want vertical
     849sub-menus, and/or any sort of interaction. You may want to bring in a jQuery script, or another WordPress
     850plugin, to handle it for you, assuming that your theme doesn't already provide the functionality you need.
    784851
    785852= How do I use the "assist"? =
     
    822889widget's `Items` settings, and also in the shortcode texts.
    823890
    824 The more painstaking way is to go to Appearance, Menus and select the relevant menu; hover over the *edit*, *Remove*, or *Cancel* link for an item and look in
     891The more painstaking way is to go to Appearance, Menus and select the relevant menu; hover over one of the *edit*, *Remove*, or *Cancel* links for an item and look in
    825892the URL (the link's href) for `menu-item=NNN` ... the NNN is the menu item id.
    826893
     
    838905would both still be eligible, but only *Bravo's descendants* would be; not Charlie's!
    839906
    840 = Where is the styling of the output coming from, and how do I change it? =
    841 The widget does not supply any ouput styling (at all!). This is because I have absolutely no idea where you are going to place either the
    842 widget (sidebar, footer, header, ad-hoc, etc?) or the shortcode (page content, post content, widget content, custom field, etc?) and everyone's
    843 requirements for styling are likely to be different ... possibly even within the same web page's output. So all styling is down to your theme,
    844 and if you wish to modify it you will need to add to your theme's stylesheet.
    845 
    846 The safest way to do this is via a child theme, so that any changes you make will not be lost if/when the main theme gets updated. The best
    847 way to test your changes is by utilising the developer capabilities that are available in most modern browsers (personally, I could not
    848 do without Firefox and the Firebug extension!) and dynamically applying/modifying styles, possibly utilising the custom classes that the
    849 widget applies to its output, or the Container options for a user-defined id or class.
     907= Can CMW handle menus that have items dynamically added by other plugins? =
     908Ummm ... Maybe.
     909
     910Unfortunately, I can't answer this with a definitive Yes or No. By definition, if something is "dynamic" then
     911it is likely to change. If the plugin that creates those dynamic items does its job correctly then the items
     912added should have unique ids, *at least within the context of the menu being manipulated*. Also, those items
     913will probably have been set up with a menu_order property that places them appropriately within the menu
     914structure, and the existing menu items will have been modified accordingly. If that is the case then CMW will
     915be able to process them in the right order & structure.
     916
     917**However**, there is a big caveat here : CMW stores item ids wherever a specific item is targeted - such
     918as `Branch=Page One`, or `Items=1,3,5`, or `Exclusions=2,4,6+`, etc. If any one of those ids relates
     919to a dynamically-generated item at the time the widget (or shortcode) is configured, then it is possible that
     920the id may get assigned to a different item, or may not even exist, when it comes to displaying the
     921menu.
     922
     923As a contrived example, let's say that posts Alpha, Charlie and Echo are dynamically added to a menu, and you
     924can see them when you configure the CMW widget. You decide to Exclude post Charlie, so you configure and save the widget accordingly.
     925Then someone adds or changes post Beta such that *it* now qualifies for dynamic inclusion into the menu - so, the
     926menu should now contain posts Alpha, Beta, Charlie and Echo. Unfortunately, the ids get re-assigned by the
     927plugin doing the dynamic insertion, and Beta now has the id that Charlie was given when you configured CMW, so
     928Beta gets filtered out and Alpha, Charlie and Echo get shown!
     929
     930So, my advice would be : If you use CMW with a menu that you *know* contains dynamically-degenerated items,
     931try to avoid specifically targeting any of those items in the configuration. For example,
     932setting `Branch=Current Item` is fine, but don't set `Branch=A Dynamic Item`; and avoid including or excluding
     933specific dynamic items, use a parent item that exists in the menu instead. If you can do that then there
     934should be no problem.
    850935
    851936= How can I find all my posts/pages that have a CMW shortcode so that I can upgrade them? =
     
    876961
    877962== Changelog ==
     963
     964= 3.2.4 =
     965* bugfix : improve handling of dynamically-generated items, by pre-sorting into menu_order order and coping with negative item ids
     966* documentation : updated FAQs
    878967
    879968= 3.2.3 =
     
    10361125== Upgrade Notice ==
    10371126
     1127= 3.2.4 =
     1128Fix to improve handling of dynamically-generated items that have negative item ids, and that get appended to the list of items.
     1129Updated FAQs documentation.
     1130
    10381131= 3.2.3 =
    10391132Tweaked documentation and verified for WordPress v4.4
Note: See TracChangeset for help on using the changeset viewer.