详解WordPress中分类函数wp_list_categories的使用


Posted in PHP onJanuary 04, 2016

wp_list_categories 函数是 WordPress 中用来罗列系统中分类的函数,该函数拥有许多控制输出的参数,今天突然被一个朋友问到,所以就大概整理了一下。

因为 WordPress 中内置扩展的小工具功能,
所以我们不经任何函数就可以在边栏或是其他我们想要的位置显示一个分类列表,
所以wp_list_categories函数就很少有人用到,
该函数使用起来有点类似于wp_list_bookmarks,

wp_list_categories 描述
wp_list_categories 函数是 WordPress 中用来罗列系统中分类链接的函数。
英文原文就不上了,有兴趣的可以去看一下官方文档。

用法

<?php
 wp_list_categories( $args ); 
$args = array(
 'show_option_all'  => '',//是否列出分类链接
 'orderby'      => 'name',//按名称排列
 'order'       => 'ASC',//升、降序
 'style'       => 'list',//是否用列表(ul>li)
 'show_count'     => 0,//是否显示文章数量
 'hide_empty'     => 1,//是否显示无日志分类
 'use_desc_for_title' => 1,//是否显示分类描述
 'child_of'      => 0,//是否限制子分类
 'feed'        => '',//是否显示rss
 'feed_type'     => '',//rss类型
 'feed_image'     => '',//是否显示rss图片
 'exclude'      => '',//排除分类的ID,多个用',(英文逗号)'分隔
 'exclude_tree'    => '',//排除分类树,即父分类及其下的子分类
 'include'      => '',//包括的分类
 'hierarchical'    => true,//是否将子、父分类分级
 'title_li'      => __( 'Categories' ),//列表标题的名称
 'show_option_none'  => __('No categories'),//无分类时显示的标题
 'number'       => null,//显示分类的数量
 'echo'        => 1,//是否显示,显示或者返回字符串
 'depth'       => 0,//层级限制
 'current_category'  => 0,//添加一个没有的分类
 'pad_counts'     => 0,//这个我也不明白
 'taxonomy'      => 'category',//使用的分类法
 'walker'       => null//用于显示的类(很复杂的概念)
?>

关于'pad_counts',我也没搞明白这个参数是干什么用的,
如果有兴趣你可以研究一下这个参数的官方文档。
也可以对照一下wp_list_bookmarks去使用。

pad_counts
(boolean) Calculates link or post counts by including items from child categories. If show_counts and hierarchical are true this is automatically set to true. This parameter added at Version 2.9 Valid values:
1 (true)
0 (false) ? default

使用实例
显示包括ID为3,5,9,16的分类链接,且按名称排列顺序

<ul>
<?php wp_list_categories('orderby=name&include=3,5,9,16'); ?> 
</ul>

显示Poetry为标题的包括ID为5,9,23的分类列表

<ul>
<?php wp_list_categories('include=5,9,23&title_li=<h2>' . __('Poetry') . '</h2>' ); ?> 
</ul>

当然你也可以像如下这样书写参数,将参数整合为数组。

<?php 
$taxonomy   = 'genre';
$orderby   = 'name'; 
$show_count  = 0;   // 1 for yes, 0 for no
$pad_counts  = 0;   // 1 for yes, 0 for no
$hierarchical = 1;   // 1 for yes, 0 for no
$title    = '';
 
$args = array(
 'taxonomy'   => $taxonomy,
 'orderby'   => $orderby,
 'show_count'  => $show_count,
 'pad_counts'  => $pad_counts,
 'hierarchical' => $hierarchical,
 'title_li'   => $title
);
?>
 
<ul>
<?php wp_list_categories( $args ); ?>
</ul>

taxonomy分类法,是相对于标签(tag)的概念。

PHP 相关文章推荐
isset和empty的区别
Jan 15 PHP
php 中英文语言转换类代码
Aug 11 PHP
用Simple Excel导出xls实现方法
Dec 06 PHP
简单的cookie计数器实现源码
Jun 07 PHP
ThinkPHP之用户注册登录留言完整实例
Jul 22 PHP
PHP实现简单搜歌的方法
Jul 28 PHP
php格式化时间戳
Dec 17 PHP
php生成无限栏目树
Mar 16 PHP
PHP编程实现的TCP服务端和客户端功能示例
Apr 13 PHP
PHP如何将图片文件上传到另外一台服务器上
Aug 26 PHP
laravel实现前后台路由分离的方法
Oct 13 PHP
PHP fopen中文文件名乱码问题解决方案
Oct 28 PHP
大家须知简单的php性能优化注意点
Jan 04 #PHP
weiphp微信公众平台授权设置
Jan 04 #PHP
PHP在线书签系统分享
Jan 04 #PHP
PHP数据库连接mysql与mysqli对比分析
Jan 04 #PHP
非常重要的php正则表达式详解
Jan 04 #PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
Jan 04 #PHP
隐藏Nginx或Apache以及PHP的版本号的方法
Jan 03 #PHP
You might like
php面向对象全攻略 (十二) 抽象方法和抽象类
2009/09/30 PHP
关于扩展 Laravel 默认 Session 中间件导致的 Session 写入失效问题分析
2016/01/08 PHP
PHP7.1新功能之Nullable Type用法分析
2016/09/26 PHP
详解PHP字符串替换str_replace()函数四种用法
2017/10/13 PHP
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
Get中文乱码IE浏览器Get中文乱码解决方案
2013/12/26 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
jQuery插件jquery-barcode实现条码打印的方法
2015/11/25 Javascript
JavaScript与jQuery实现的闪烁输入效果
2016/02/18 Javascript
用js实现放大镜的效果的简单实例
2016/05/23 Javascript
Bootstrap+jfinal实现省市级联下拉菜单
2016/05/30 Javascript
jquery操作checkbox火狐下第二次无法勾选的解决方法
2016/10/10 Javascript
非常优秀的JS图片轮播插件Swiper的用法
2017/01/03 Javascript
原生JS实现简单的无缝自动轮播效果
2018/09/26 Javascript
JS动态显示倒计时效果
2019/12/12 Javascript
JavaScript 替换所有匹配内容及正则替换方法
2020/02/12 Javascript
微信小程序实现滑动操作代码
2020/04/23 Javascript
[01:46]DOTA2上海特锦赛小组赛英文解说KotlGuy采访
2016/02/27 DOTA
Python读取图片EXIF信息类库介绍和使用实例
2014/07/10 Python
python3制作捧腹网段子页爬虫
2017/02/12 Python
浅谈Python实现Apriori算法介绍
2017/12/20 Python
Python使用遗传算法解决最大流问题
2018/01/29 Python
python 处理数字,把大于上限的数字置零实现方法
2019/01/28 Python
Django url,从一个页面调到另个页面的方法
2019/08/21 Python
Python matplotlib生成图片背景透明的示例代码
2019/08/30 Python
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
2013/07/19 HTML / CSS
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
马来西亚排名第一的宠物用品店:Pets Wonderland
2020/04/16 全球购物
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
小学生竞选班干部演讲稿
2014/04/24 职场文书
教师考核材料
2014/05/21 职场文书
工作疏忽、懈怠的检讨书
2014/09/11 职场文书
婚内房产协议书范本
2014/10/02 职场文书
铁路安全反思材料
2014/12/24 职场文书
税务会计岗位职责
2015/04/02 职场文书
安全生产感想
2015/08/07 职场文书