[1154] | 1 | Introduction |
---|
[3275] | 2 | ------------ |
---|
[1154] | 3 | |
---|
[2782] | 4 | This package allows to build dropdown menu through the web with portal_actions. |
---|
[2786] | 5 | Submenus are built from a tree of nested Category Actions and Actions. |
---|
[3347] | 6 | |
---|
[2782] | 7 | The other strategy used to populate submenus is Plone default NavigationStrategy, |
---|
| 8 | the one used in navigation portlet. |
---|
[1154] | 9 | |
---|
[2782] | 10 | This project is successor of qPloneDropDownMenu. |
---|
[1157] | 11 | |
---|
[2782] | 12 | Building you dropdown menu with portal_actions |
---|
[3275] | 13 | ============================================== |
---|
[1158] | 14 | |
---|
[2782] | 15 | Starting from Plone 3 portal actions introduced CMF Action Category |
---|
[2786] | 16 | containers, it opened opportunity to build nested actions trees. Though CMF Action |
---|
[2782] | 17 | Category does not behave as a regular action, it has different set of properties. |
---|
[2786] | 18 | We introduced convention in quintagroup.dropdownmenu that requires to have |
---|
[2782] | 19 | a specially named Action for each Actions Category. The id of each such action |
---|
[2849] | 20 | must be build using the rule:: |
---|
[2782] | 21 | |
---|
[2849] | 22 | action_id = prefix + category_id + suffix |
---|
[2782] | 23 | |
---|
| 24 | where: |
---|
| 25 | |
---|
[2849] | 26 | :category_id: is id of correspondent CMF Action Category |
---|
| 27 | :prefix: defined in DropDownMenu configlet, default value '' |
---|
| 28 | :suffix: defined in DropDownMenu configlet, default value '_sub' |
---|
[1158] | 29 | |
---|
[2849] | 30 | So, the actions structure can look like:: |
---|
[1158] | 31 | |
---|
[2849] | 32 | + portal_tabs |
---|
| 33 | |- home |
---|
| 34 | |- blog_sub |
---|
| 35 | |-+ blog |
---|
| 36 | | |-- 2009 |
---|
| 37 | | |-- 2010 |
---|
[2782] | 38 | |
---|
| 39 | By default the root of dropdown menu is 'portal_tabs' category. |
---|
[3347] | 40 | |
---|
| 41 | Menu caching |
---|
| 42 | ============ |
---|
| 43 | |
---|
| 44 | If the menu built with Navigation strategy is entirely public it can be cached for |
---|
| 45 | all users. If Authenticaded users should see some non public items the menu can be |
---|
| 46 | cached for anonymous only. |
---|
| 47 | |
---|
| 48 | Caching in case of involving the portal_actions strategy is effective only in case |
---|
| 49 | if all the action are public and have no extra conditions. In case some conditions |
---|
| 50 | are applied per action switch off caching. |
---|
| 51 | |
---|
[2782] | 52 | |
---|
| 53 | Compatibility |
---|
[3275] | 54 | ============= |
---|
[1157] | 55 | |
---|
[2849] | 56 | * **Plone 4** sample CSS file based on Sunburst theme provided |
---|
| 57 | * **Plone 3.0-3.3** the default CSS file has to be overridden |
---|
[1157] | 58 | |
---|
[1173] | 59 | Installation |
---|
[3275] | 60 | ============ |
---|
[1157] | 61 | |
---|
[3275] | 62 | * add http://good-py.appspot.com/release/plone.app.registry/1.0b2 to versions in your buildout |
---|
[3093] | 63 | * add quintagroup.dropdownmenu to eggs in your buildout |
---|
[3275] | 64 | * install Plone DropDown Menu in Plone via Site Setup -> Add-ons |
---|
| 65 | |
---|
[3347] | 66 | Find more details on the topic inside docs/INSTALL.txt |
---|
| 67 | |
---|