This is a relatively simple plugin that uses Javascript based on MooTools framework to
make each Categories links in the sidebar collapsable. Every post corresponding to a given
category will be expanded. Fork of Rob Felty's Collapsing Categories.
Multiple languages content is now fully supported through compatibility with qTranslate and WPML Multilingual CMS
Plugin Homepage: http://www.3dolab.net/en/mootools-collapsing-categories-and-archives
Running Demo
banner image by Karora
icon by Jdforrester
有什么新东西?
See the CHANGELOG for more information
兼容性
This plugin is compatible with WordPress 2.8+, but not with prior versions
(2.7.1 or earlier).
If you prefer to insert code into your theme manually instead of using
widgets, please check the manual installation instructions.
IMPORTANT!
Please deactivate before upgrading, then re-activate the plugin.
Unpackage contents to wp-content/plugins/ so that the files are in a
mootools-collapsing-categories/ directory.
Widget installation
Activate the plugin, then simply go the
Presentation > Widgets section and drag over the Moo Collapsing Categories Widget.
手动安装
Activate the plugin, then insert the following into your template: (probably
in sidebar.php). See the Options section for more information on specifying
options.
echo "<ul class='collapsCatList'>\n"; if (function_exists('collapsCat')) { collapsCat(); } else { wp_get_categories('your_options_here'); } echo "</ul>\n";
Options and configuration
Style options can be set via the settings panel. All other options can be set
from the widget panel. If you wish to insert the code into your theme manually
instead of using a widget, you can use the following options. These options
can be given to the
collapsCat()
function either as an array or in query
style, in the same manner as the
wp_list_categories
function.
$defaults=array( 'showPostCount' => true, 'inExclude' => 'exclude', 'inExcludeCats' => '', 'showPosts' => true, 'showPages' => false, 'linkToCat' => true, 'olderThan' => 0, 'excludeAll' => '0', 'catSortOrder' => 'ASC', 'catSort' => 'catName', 'postSortOrder' => 'ASC', 'postSort' => 'postTitle', 'expand' => '0', 'defaultExpand' => '', 'postTitleLength' => 0, 'animate' => 0, 'catfeed' => 'none', 'catTag' => 'cat', 'showPostDate' => false, 'postDateAppend' => 'after', 'postDateFormat' => 'm/d', 'useCookies' => true, 'showTopLevel' => true, 'postsBeforeCats' => false, 'debug'=>'0' );
- inExclude
- Whether to include or exclude certain categories
- 'exclude' (default)
- 'include'
- inExcludeCats
- The categories which should be included or excluded
- showPages
- Whether or not to include pages as well as posts. Default if false
- linkToCat
- 1 (true), clicking on a category title will link to the category archive (default)
- 0 (false), clicking on a category title expands and collapses
- catSort
- How to sort the categorys. Possible values:
- 'catName' the title of the category (default)
- 'catId' the Id of the category
- 'catSlug' the url of the category
- 'catCount' the number of posts in the category
- 'catOrder' custom order specified in the categorys settings
- catSortOrder
- Whether categories should be sorted in normal or reverse
order. Possible values:
- 'ASC' normal order (a-z 0-9) (default)
- 'DESC' reverse order (z-a 9-0)
- postSort
- How to sort the posts. Possible values:
- 'postDate' the date of the post (default)
- 'postId' the Id of the post
- 'postTitle' the title of the post
- 'postComment' the number of comments on the post
- postSortOrder
- Whether post should be sorted in normal or reverse
order. Possible values:
- 'ASC' normal order (a-z 0-9) (default)
- 'DESC' reverse order (z-a 9-0)
- expand
- The symbols to be used to mark expanding and collapsing. Possible values:
- '0' Triangles (default)
- '1' + -
- '2' [+] [-]
- '3' images (you can upload your own if you wish)
- '4' custom symbols
- customExpand
- If you have selected '4' for the expand option, this character will be
used to mark expandable link categories
- customCollapse
- If you have selected '4' for the expand option, this character will be
used to mark collapsible link categories
- postTitleLength
- Truncate post titles to this number of characters (default: 0 = don't
truncate)
- animate
- When set to true, collapsing and expanding will be animated
- catfeed
- Whether to add a link to the rss feed for a category. Possible values:
- 'none' (default)
- 'text' shows RSS
- 'image' shows an RSS icon
- catTag
- Whether to include categories, tags, or both. Possible values:
- 'cat' (default)
- 'tag'
- 'both'
- showPostDate
- When true, show the date of each post
- postDateAppend
- Show the date before or after the post title. Possible values:
- 'after' (default)
- 'before'
- postDateFormat
- What format the post date is in. This uses the standard php date
formatting codes
- useCookies
- When true, expanding and collapsing of categories is remembered for each
visitor. When false, categories are always display collapsed (unless
explicitly set to auto-expand). Possible values:
- 1 (true) (default)
- 0 (false)
- debug
- When set to true, extra debugging information will be displayed in the
underlying code of your page (but not visible from the browser). Use
this option if you are having problems
- showTopLevel
- When set to false, the top level category will not be shown. This could
be useful if you only want to show subcategories from one particular
top-level category
- 1 (true) (default)
- 0 (false)
- postsBeforeCats
- When set to true, posts in category X will be ordered before
subcategories of category X
- 1 (true)
- 0 (false) (default)
比如
collapsCat('animate=1&catSort=ASC&expand=3&inExcludeCats=general,uncategorized')
This will produce a list with:
- animation on
- categories shown in alphabetical order
- using images to mark collapsing and expanding
- exclude posts from the categories general and uncategorized
Fallback
Currently this plugin relies on Javascript to expand and collapse the links.
If a user's browser doesn't support javascript they won't see the links to the
posts, but the links to the categories will still work (which is the default
behavior in wordpress anyways)