华纳云香港服务器

如何让WordPress自带的标签云小工具变成彩色标签云?

WordPress主题推荐

WordPress自带的标签云小工具可按照类别或标签来排序标签云,但是不方便我们来控制所展示的标签数量及颜色,以及排除(或包含)指定的标签等。其实,我们完全可以通过在当前主题的函数文件中functions.php中添加一段代码来实现这些功能,方法很简单,只需要简单2个步骤即可,具体如下:

1、将以下代码添加到当前主题的 functions.php 文件中即可。

// 彩色标签云
function colorCloud($text) {
$text = preg_replace_callback('|<a (.+?)>|i', 'colorCloudCallback', $text);
return $text;
}
function colorCloudCallback($matches) {
$text = $matches[1];
$color = dechex(rand(0,16777215));
$pattern = '/style=(\'|\")(.*)(\'|\")/i';
$text = preg_replace($pattern, "style=\"color:#{$color};$2;\"", $text);
return "<a $text>";
}
add_filter('wp_tag_cloud', 'colorCloud', 1);
//custom widget tag cloud
add_filter( 'widget_tag_cloud_args', 'theme_tag_cloud_args' );
function theme_tag_cloud_args( $args ){
$newargs = array(
'smallest' => 12, //最小字号
'largest' => 20, //最大字号
'unit' => 'px', //字号单位,可以是pt、px、em或%
'number' => 20, //显示个数
'format' => 'flat',//列表格式,可以是flat、list或array
'separator' => "&nbsp;&nbsp;", //分隔每一项的分隔符
'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;
}

大家在使用的过程中可根据自己站点的实际情况修改以上代码中的标签的最小/最大字号、标签个数、列表格式、标签之间的分隔符、排序字段、升降序、排除/包含某些标签等。更多关于标签的参数介绍请参考『如何修改WordPress自带标签云小工具的标签数量?』。

2、进入WordPress后台 – 外观 – 小工具 – 将“标签云”小工具添加到相应侧边栏即可。

如何让WordPress自带的标签云小工具变成彩色标签云?-第1张-boke112百科(boke112.com)

此时,我们可以看到前端侧边栏的标签云效果过如下所示:

如何让WordPress自带的标签云小工具变成彩色标签云?-第2张-boke112百科(boke112.com)

当然,如果你不喜欢折腾代码,那么也可以考虑安装Categorized Tag Cloud插件实现,具体请参考『WordPress可按类别过滤标签的标签云小工具插件Categorized Tag Cloud』。

本文地址:https://boke112.com/post/3847.html

赞 (0) 打赏
版权声明:本文为原创文章,版权归 boke112百科 所有,欢迎分享本文,转载请保留出处!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请联系我们,确认后马上更正或删除,谢谢!
wu