bootstrap WordPress函数:wp_list_categories(分类列表)oschina

这几天老师让用设计网站,要求用WordPress管理后台。但是在做的过程中遇到了很多问题,因为以前从没接触过php。所以过程相当艰难。

在做sidebar.php的过程中,调用wp_list_categories,一直不能显示想要的效果,简直崩溃。

准备工作,在WordPress的后台管理中,添加一个分类项目,然后在这个分类项目中再加入几个子项目,要能看到父节点的id号,因为下面要用到。

213743_Ulxr_2762505.png

 

首先,看一下wp_list_categories函数的全部参数

<?php $args = array(
	'show_option_all'    => '',
	'orderby'            => 'name',
	'order'              => 'ASC',
	'style'              => 'list',
	'show_count'         => 0,
	'hide_empty'         => 1,
	'use_desc_for_title' => 1,
	'child_of'           => 0,
	'feed'               => '',
	'feed_type'          => '',
	'feed_image'         => '',
	'exclude'            => '',
	'exclude_tree'       => '',
	'include'            => '',
	'hierarchical'       => 1,
	'title_li'           => __( 'Categories' ),
	'show_option_none'   => __('No categories'),
	'number'             => null,
	'echo'               => 1,
	'depth'              => 0,
	'current_category'   => 0,
	'pad_counts'         => 0,
	'taxonomy'           => 'category',
	'walker'             => null
); ?>

接下来,分别看每一个参数的值和实现的效果

show_option_all :(字符串)非空值会导致如果样式设置为列表显示所有类别的链接。默认值是不显示链接到所有分类。

 

orderby :(字符串)以分类名称、分类ID或文章数量等为排列依据。有效值:

  • ID
  • name – 默认
  • slug
  • count
  • term_group

order :(字符串)分类的排序顺序(升序或降序)。缺省为升序。有效值:

  • ASC – 升序(默认)
  • DESC – 降序

style:(字符串)分类列表显示的样式。将分类列表的方式显示(使用<br >标签分隔列表项)。默认设置为列表(无序列表)。有效值:

  • list – 默认
  • none

show_count: (布尔)显示文章数量。默认情况下不显示文章数量。有效值:

  • 1 (True)
  • 0 (False) – 默认

hide_empty:(布尔)隐藏没有文章的分类。  默认情况下隐藏没有文章的分类。有效值:

  • 1 (True) – 默认
  • 0 (False)

use_desc_for_title :(布尔)是否将分类描述作为分类链接中的 title 属性,默认为 true。有效值:

  • 1 (True) – 默认
  • 0 (False)

child_of :(整数)只显示此参数确定的分类的子分类。此参数没有默认值。

feed :(字符串)显示每个分类的 RSS-2 Feed链接到设置的feed文字。默认不显示feed文字和链接。

feed_type :(字符串)

feed_image :(字符串)设置一个图片到分类的 RSS-2 Feed链接。这个参数会覆盖上面的 feed 参数。此参数没有默认值。

exclude :(字符串)排除一个或多个分类。使用逗号分隔每个分类的ID。参数 include 必须为空。

exclude_tree :(字符串)排除分类树。使用逗号分隔每个分类的ID。参数 include 必须为空。如果 hierarchical 参数 为 true ,请使用 exclude 参数替代 exclude_tree 。

include :(字符串)只显示特定的分类,使用逗号分隔每个分类的ID。

hierarchical:(布尔)以层级来显示分类的子分类。默认为 true(在分类的下面显示它们的子分类)。有效值:

  • 1 (True) – 默认
  • 0 (False)

title_li :(字符串)设置列表的标题。默认为“Categories”。如果存在这个参数,但是值为空,将无法显示列表。

number:(整数)设置显示的分类数量。定义SQL的限制值。默认为不限制。

echo:(布尔) 显示结果或保存在一个变量里。默认为 True 。有效值:

  • 1 (True) – 默认
  • 0 (False)

depth :(整数)显示分类的深度(即显示多少层的子分类)。默认值为 0(显示所有分类和子分类)。有效值:

  • 0 – 所有分类和子分类(默认)
  • -1 – 所有类别显示在平面(不缩进)的形式(覆盖hierarchical)。
  • 1 – 只显示顶级分类
  • n – 根据n的具体数字来显示对应等级的分类。

current_category :(整数)后跟分类ID号,对此ID分类加入名为current-cat的CSS控制,用户自定义current-cat样式后,可用于突出显示。

pad_counts:(布尔)计算包括子分类的链接或文章数。如果 show_counts 和 hierarchical 为  true ,这个参数就自动设置为  true 。有效值:

  • 1 (true)
  • 0 (false) – 默认

taxonomy:(字符串)要返回的分类法。该参数是在 3.0 中添加的。有效值:

  • category – 默认
  • taxonomy – 或任何其他已注册的分类法

walker :(对象)生成列表 Walker 类。有效值:object – an instance of a class that extends either Walker_Category or Walker

 

默认调用的效果:

  • 无连接的分类
  • 根据分类名称对分类列表进行升序排列
  • 以无序列表的样式显示
  • 不显示文章数量
  • 只显示有文章的分类
  • 设置标题属性到分类描述
  • 子分类无限制
  • 不显示Feed和Feed图像
  • 不排除任何分类,并包括所有分类
  • 为当前的分类添加CSS类’current-cat’
  • 以分层缩进的方式显示分类列表
  • 在列表的顶部显示“分类(Categories)”作为标题
  • 没有SQL限制(’number’ => 0 is not shown above)
  • 显示(输出)分类
  • 不限制显示的深度
  • 所有分类
  • 使用一个新的Walker_Category 类对象 walker 来显示列表

调用的方法:

在需要调用的位置加入下面的代码:

<?php wp_list_categories('参数列表'); ?>

可以被div span 等容器包裹,也可以用ul li 标签包裹。

下面再写几个例子:

1、按字母顺序排序分类,只包括类别ID为 16,3,9和5 的分类,你可以使用下面的代码:

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

2、显示ID为 8 的分类的子分类,根据ID排序,显示文章数,并且将分类描述作为连接的 title属性。注意:如果父分类没有文章,将不显示父分类。

<?php wp_list_categories('orderby=id&show_count=1&use_desc_for_title=0&child_of=8'); ?>

 

如果要想显示没有文章的分类条目,必须在参数列表中加上hide_empty=0,我就是在这里郁闷了老半天。

转载于:https://my.oschina.net/jjkang/blog/806701

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值