详解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 相关文章推荐
PHP 检查扩展库或函数是否可用的代码
Apr 06 PHP
防止本地用户用fsockopen DDOS攻击对策
Nov 02 PHP
PHP将两个关联数组合并函数提高函数效率
Mar 18 PHP
非常好用的Zend Framework分页类
Jun 25 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
Nov 22 PHP
php自动识别文字编码并转换为目标编码的方法
Aug 08 PHP
php正则判断是否为合法身份证号的方法
Mar 16 PHP
PHP操作Postgresql封装类与应用完整实例
Apr 24 PHP
PHP日志LOG类定义与用法示例
Sep 06 PHP
PHP实现微信商户支付企业付款到零钱功能
Sep 30 PHP
laravel实现一个上传图片的接口,并建立软链接,访问图片的方法
Oct 12 PHP
PHP数组与字符串互相转换实例
May 05 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实现的随机广告显示代码
2007/06/14 PHP
phpMyAdmin 链接表的附加功能尚未激活的问题
2010/08/01 PHP
解析php dirname()与__FILE__常量的应用
2013/06/24 PHP
php使用CURL伪造IP和来源实例详解
2015/01/15 PHP
PHP基于堆栈实现的高级计算器功能示例
2017/09/15 PHP
PHP实现微信退款功能
2018/10/02 PHP
Alliance vs Liquid BO3 第一场2.13
2021/03/10 DOTA
IE6下通过a标签点击切换图片的问题
2010/11/14 Javascript
Javascript中的window.event.keyCode使用介绍
2011/04/26 Javascript
javascript 弹出层组件(升级版)
2011/05/12 Javascript
JavaScript中的稀疏数组与密集数组[译]
2012/09/17 Javascript
js的延迟执行问题分析
2014/06/23 Javascript
JS实现表格数据各种搜索功能的方法
2015/03/03 Javascript
jQuery实现单击弹出Div层窗口效果(可关闭可拖动)
2015/09/19 Javascript
angular.bind使用心得
2015/10/26 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
angular+ionic 的app上拉加载更新数据实现方法
2017/01/16 Javascript
js实现类bootstrap模态框动画
2017/02/07 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
2017/02/12 Javascript
javascript 中select框触发事件过程的分析
2017/08/01 Javascript
Windows下使用Nodejs运行js的方法
2017/09/02 NodeJs
一文搞懂ES6中的Map和Set
2019/05/20 Javascript
JS学习笔记之闭包小案例分析
2019/05/29 Javascript
layui实现数据表格自定义数据项
2019/10/26 Javascript
mpvue网易云短信接口实现小程序短信登录的示例代码
2020/04/03 Javascript
go语言计算两个时间的时间差方法
2015/03/13 Python
由浅入深讲解python中的yield与generator
2017/04/05 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
Python 线程池用法简单示例
2019/10/02 Python
Python实现弹球小游戏
2020/08/01 Python
Web页面中八种创建多列等高(等高列布局)的实现技术
2012/12/24 HTML / CSS
应届生个人求职信模板
2013/11/26 职场文书
法律系毕业生求职信
2014/05/28 职场文书
六一亲子活动总结
2014/07/01 职场文书
2015年教师节贺卡寄语
2015/03/24 职场文书
Python 中的单分派泛函数你真的了解吗
2021/06/22 Python