无插件添加 wordpress 彩色tags模块

WordPress的旧版dafi主题是没有tags彩色标签的,如果大家下载得更早点免费的dafi主题还不支持中文tags。如果大家有对比dafi pro版会发现,两个版本的 function.php 文件是一样,但是为嘛dafi pro版wordpress主题显示的tags就自动变彩色而老版始终无法变彩色?因为Wordpress主题dafi pro 没有把彩色tags函数写在functions.php文件里面,而是转到了JS文件jquery.dafi.js里面。所以,如果没有tags变色函数,是无法实线彩色tags标签的。下面介绍两种制作彩色标签的方法:

一、随机颜色

将以下代码放入主题包 functions.php 文件内:

<?php
function colorCloud($text) {
$text = preg_replace_callback('&#124;<a (.+?)>&#124;i', 'colorCloudCallback', $text);
return $text;
}
function colorCloudCallback($matches) {
$text = $matches[1];
$color = dechex(rand(0,16777215));
$pattern = '/style=(\'&#124;\")(.*)(\'&#124;\")/i';
$text = preg_replace($pattern, "style=\"color:#{$color};$2;\"", $text);
return "<a $text>";
}
add_filter('wp_tag_cloud', 'colorCloud', 1);
?>

第8行代码’$color=dechex(rand(0,16777215)); ‘作用是定义标签随机颜色的十进制数值范围,0 等于 #000000,16777215 等于 #ffffff。

<?php wp_tag_cloud('smallest=8&largest=24&number=50'); ?>

在你需要展示彩色tags的地方添加上面的代码,就可以在自定义位置展示彩色tags了。

二、自定义颜色

function colorCloudCallback($matches) {
$tag_link=$matches[1];
/*颜色集合*/
$colorFull = array('#999','#D8D9A4','#9BB','#EB9','#a3c159','#FEC42D','#6C8C37',
'#c2dc15','#3371A3','#888','#00ccff','#FF8080');
$color=$colorFull[ mt_rand(0, count($colorFull) - 1)];
$pattern = '/style=(\'&#124;\")(.*)(\'&#124;\")/i';
$tag_link= preg_replace($pattern, "style=\"color:{$color};$2;\"", $tag_link);
return "<a $tag_link>";
}
add_filter('wp_tag_cloud', 'colorCloud', 1);

该段自定义颜色的函数代码放在哪里怎样使用就不用我多啰嗦了吧,不会的可以对照着默认模板上面的标签函数,放到新模板的对应位置。

可以不经允许随意转载,分享:广州SEO,移动互联网营销 » 无插件添加 wordpress 彩色tags模块

分享的每套dede模板,整站带数据源码,wordpress模板,整站源码下载,帝国cms模板,带数据帝国cms网站,淘宝客源码,女性网站模板等源码的下载链接地址请咨询QQ索取。
赞 (0)
分享到: 更多