PHP代码实现标签云显示自定义颜色

重庆SEO分享:关于PHP代码实现云标签显示自定义颜色,如果一个主题标签的颜色都一样,是否未免太单调呢?

重庆陈江林利用PHP代码即可将标签变成彩色的,这可以为让我们的网站增色不少,更能增强我们网站的用户体验。

一、无插件利用PHP代码实现彩色标签云:

1、随机颜色:

将下面一段代码插入到主题文件中functions.php文件的适当位置:

<?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);
?>

Ps:“<?php”和“?>”不要复制到functions.php,主题只要有模板函数(functions.php)的就已经有函数“开头”和“结尾”的命令符了,不然会出错的哟。

第8行代码’$color=dechex(rand(0,16777215)); ‘作用是定义标签随机颜色的十进制数值范围,0 等于 #000000,16777215 等于 #ffffff。你可以使用进制换算工具换算后修改这行代码,改变颜色范围。

在主题需要的地方加入以下代码:

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

Ps:新版本wordpress中如果您的theme支持widgets,在小工具中添加标签云模块即可,不用手动添加上面的代码。

代码说明:

“smallest”:最小的字体尺寸(使用频率最少的标签)

“largest”:最大的字体尺寸(频率最多的)

“number”:则表示标签显示数量。

2、自定义颜色

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

 <?php
function colorCloud($text) {
$text = preg_replace_callback('|<a (.+?)>|i', 'colorCloudCallback', $text);
return $text;
}
function colorCloudCallback($matches) {
$text = $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=(\'|\")(.*)(\'|\")/i';
$text = preg_replace($pattern, "style=\"color:{$color};$2;\"", $text);
return "<a $text>";
}
add_filter('wp_tag_cloud', 'colorCloud', 1);
?>

Ps:“<?php”和“?>”不要复制到functions.php,主题只要有模板函数(functions.php)的就已经有函数“开头”和“结尾”的命令符了,不然会出错的哟。

代码说明:代码$colorFull = array(‘……’);中的是自定义的颜色,把自己喜欢的颜色改上去即可。

《重庆SEO》使用的是自定义颜色,根据网站的需要选择不同的方法,添加好后更新文件刷新网页,是否自己的网站标签云发生变化呢?

发表评论

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