牛牛逼逼叉叉
菜单

WordPress函数:wp_tag_cloud(标签云)自定义自己的标签云

2016年07月21日,分类《wordpress》,作者:
博客捐助

使用 主题一段时间之后,感觉标签云模块有点儿看得眼花,所以想还原成没有颜色,并且只按一种字号显示。

WordPress 自带的标签云是一个很实用的小工具。站长可以通过标签对具有相同关健词的文章进行检索分类,利于访客查找相关文章。WordPress 默认标签云的字体最小为8pt,最大为22pt,标签显示数量为45个,按标签名称升序排列。但是这个默认的标签云有时在与选定的模板相结合时显得不那么 美观,这就需要我们对标签云的默认参数进行修改。方法很简单,就是修改 WordPress 代码中标签云调用函数 wp_tag_cloud 的各项参数。

修改 WordPress 标签云方法

打开 wp-includes/category-template.php 搜索 wp_tag_cloud 找到

function wp_tag_cloud( $args = '' ) {
    $defaults = array(
        'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 200,
        'format' => 'flat', 'separator' => "\n", 'orderby' => 'name', 'order' => 'RAND',
        'exclude' => '', 'include' => '', 'link' => 'view', 'taxonomy' => 'post_tag', 'post_type' => '', 'echo' => true
    );

按需修改 wp_tag_cloud 函数的具体参数即可实现标签云的自定义。

将修改好的category-template.php文件上传到空间中替换原文件即可。

说明

wp_tag_cloud() 函数的作用是用来标签云的,可以根据每个标签所关联的文章次数来定义字体大小、标签排序等属性。从 2.8 版本开始,添加了 分类法(taxonomy)参数,这就意味着,除了 标签(tags)以外,还可以将 分类(Categories) 或其他 自定义分类法(Custom Taxonomies)作为“云”显示。

用法

<?php wp_tag_cloud( $args ); ?>

默认用法

<?php $args = array(
'smallest'                  => 8, 
'largest'                   => 22,
'unit'                      => 'pt', 
'number'                    => 45,  
'format'                    => 'flat',
'separator'                 => "\n",
'orderby'                   => 'name', 
'order'                     => 'ASC',
'exclude'                   => null, 
'include'                   => null, 
'topic_count_text_callback' => default_topic_count_text,
'link'                      => 'view', 
'taxonomy'                  => 'post_tag', 
'echo'                      => true,
'child_of'                   => null(see Note!)
); ?>

注: child_of 不是一个直接的 wp_tag_cloud 数组的键(Key),但由于这个函数使用 wp_parse_args() 和 get_terms() ,你可以通过 get_terms() 使用所有的数组键。

默认情况下的输出内容:

  • smallest —— 最小的标签(使用次数最少)显示大小为8
  • largest ——最大的标签(使用次数最多)显示大小为22
  • unit —— 最大值最小值的单位为’pt’
  • number —— 至多显示45个标签
  • format —— 以平面形式显示所有标签(标签之间用空格隔开)
  • separator —— 显示标签之间的空格
  • orderby —— 按名称为标签排序
  • order —— 以升序排列
  • exclude —— 不排除任何标签
  • include —— 包括所有标签
  • topic_count_text_callback —— 使用函数 default_topic_count_text
  • link —— 可视
  • taxonomy —— 用文章的标签作为云基础
  • echo —— 输出结果

参数

smallest

(整数)(可选)使用次数最少的标签的字号大小(单位由unit参数决定)

默认值:8

largest

(整数)(可选)使用次数最多的标签的字号大小(单位由unit参数决定)

默认值:22

unit

(字符串)(可选)对smallestlargest的值的测量单位。可以是任何CSS长度单位,如pt, px, em, %。

默认值:’pt’

number

(整数)(可选)显示在云中的实际标签数。(值为’0’时显示所有标签)

默认值:45

format

(字符串)(可选)所显示的云的格式。

  • ‘flat’ (默认值)标签被“separator”参数所定义的空格分隔
  • ‘list’ 标签与class=’wp-tag-cloud’ 共同在UL中
  • ‘array’ 标签在数组中,函数以数组方式返回标签云,以用在PHP中。注意:数组被返回,而非显示。

separator

(字符串)(可选)标签之间的文本/空格。

默认值:’\n’ (空格)

orderby

(字符串)(可选)标签的排列依据。有效值包括:

  • ‘name’ (默认值)
  • ‘count’

order

(字符串)(可选)排列顺序(升序或降序)。有效值包括(必须大写):

  • ‘ASC’ ——升序(默认值)
  • ‘DESC’ ——降序
  • ‘RAND’ —— 随机

exclude

(字符串)(可选)将要被排除的标签(term_id)的ID,各ID用逗号隔开。如 ‘exclude=5,27’表示不显示term_id为5或27的标签。默认值为不排除任何标签。

include

(字符串)(可选)要包含的标签(term_id)列表,各ID用逗号隔开。例如, ‘include=5,27’ 表示只显示term_id为5或27的标签。默认为包含所有链接。

topic_count_text_callback

(字符串)(可选)给出标签所关联的文章数,返回标签链接的用于 tooltip 的文本。

默认值: default_topic_count_text

link

(字符串)(可选)设置链接,允许编辑某个指定标签。有效值包括:

  • ‘view’ (默认值)
  • ‘edit’

taxonomy

(字符串)(可选)用以生成云的分类法。

  • ‘post_tag’ —— (默认值)将文章标签当作云的来源
  • ‘category’ —— 用文章分类生成云
  • ‘link_category’ —— 用链接分类目录生成云
  • 任何其他已注册的分类法
  • 或者一组 分类法 (注:此参数引入于 3.1 版本)

echo

(布尔型)(可选)显示结果,或将结果保留在变量中。默认值为true(显示标签云)。有效值包括:

  • 1 (true) —— 默认值
  • 0 (false)


发表评论

电子邮件地址不会被公开。 必填项已用*标注

【上一篇】

2016翻墙host 可访问google,YouTube,facebook

【下一篇】

IT之家的网站自适应适配跳转是如何操作的 源码