DeveWork

自定义WordPress 标签云小工具相关参数

相信你知道WordPress 标签云widget(小工具)是什么,如果你的WordPress 主题支持小工具,就可以在后台启用标签云小工具,该小工具不仅能展示标签也能展示分类目录。其默认的参数对于一些特别的主题来说可能不是那么合适。还好WordPress 官方提供了widget_tag_cloud_args 这个过滤器(filter)来让开发者在不改动WordPress 核心文件的基础上自定义相关显示参数。

相关函数:

WordPress 官方文档:wp_tag_cloud(标签云)

在WordPress中的源文件:wp-includes/category-template.php

如果你需要自定义标签云widget 小工具相关参数,比如说字体大小、显示顺序之类的,对于其默认参数必须有一定的认识。下面结合使用教程来进一步说明:

在主题的functions.php 文件下加入以下代码就可以自定义WordPress 标签云小工具相关参数:

//custom widget tag cloud
add_filter( 'widget_tag_cloud_args', 'theme_tag_cloud_args' );
function theme_tag_cloud_args( $args ){
	$newargs = array(
		'smallest'    => 8,  //最小字号
		'largest'     => 22, //最大字号
		'unit'        => 'pt',   //字号单位,可以是pt、px、em或%
		'number'      => 45,     //显示个数
		'format'      => 'flat',//列表格式,可以是flat、list或array
		'separator'   => "\n",   //分隔每一项的分隔符
		'orderby'     => 'name',//排序字段,可以是name或count
		'order'       => 'ASC', //升序或降序,ASC或DESC
		'exclude'     => null,   //结果中排除某些标签
		'include'     => null,  //结果中只包含这些标签
		'link'        => 'view' //taxonomy链接,view或edit
		'taxonomy'    => 'post_tag', //调用哪些分类法作为标签云
	);
	$return = array_merge( $args, $newargs);
	return $return;
}

上诉代码中的数组可适当取舍,如果要采用默认的参数,就可以将相关自定义的参数(数组)删除。

默认参数解析:
smallest:标签文字最小字号,默认为8pt;
largest:标签文字最大字号,默认为22pt;
unit:标签文字字号的单位,默认为pt,可以为px、em、pt、百分比等;
number:调用的标签数量,默认为45个,设置为“0”则调用所有标签;
format:调用标签的格式,可选“flat”、“list”和“array”,默认为“flat”平铺,“list”为列表方式;
orderby:调用标签的排序,默认为“name”按名称排序,“count”则按关联的文章数量排列;
order:排序方式,默认为“ASC”按正序,“DESC”按倒序,“RAND”按任意顺序。
exclude:排除部分标签,输入标签ID,并以逗号分隔,如“exclude=1,3,5,7”不显示ID为1、3、5、7的标签;
include:包含标签,与exclude用法一样,作用相反,如“include=2,4,6,8”则只显示ID为2、4、6、8的标签。

在这里提供本站 DeveWork.com 下面中间的 标签云 小工具的自定义代码(过滤器名称不一样,功能一样):

add_filter('widget_tag_cloud_args','style_tags'); 
function style_tags($args) { 
$args = array( 
'largest'=> '11', 
'smallest'=> '11',  
'number' => '30',  
); 
return $args; 
}