无插件实现标签云彩色效果
最近看见大伙的博客主题越来越好看,本人从开博到现在已经换了N个主题了,停留在这个状态已经很久了,其中上次的博客主题,也就是我发布完这篇文章的时候,这个主题是我最喜欢的,顶部的图片可以定期换,只要更换图片就能给大家一种新鲜的感觉,不用大换主题,上次去掉所有图片是因为空间流量问题,我以为是图片的原因,经过页面压缩以后,发现空间流量已经够用了,现在终于可以换回来了,于是顺便加上一个标签云彩色效果,这个彩色效果虽然以前就用过了,不过这次的方法不同,不用修改插件里面的代码,直接在functions.php里面添加一段代码就搞定,解决了以往使用插件代码,更新插件的时候就没有效果的问题。
这么好的方法当然不是我想出来的,而是google出来的:
一、随机颜色
将以下代码放入主题包 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);
第8行代码”$color=dechex(rand(0,16777215));”:作用是定义标签随机颜色的十进制数值范围,0 等于 #000000,16777215 等于 #ffffff。你可以使用进制换算工具换算后修改这行代码,改变颜色范围。
在主题需要的地方加入以下代码:
<?php wp_tag_cloud('smallest=8&largest=24&number=50'); ?>
代码说明:
- “smallest”:最小的字体尺寸(使用频率最少的标签)
- “largest”:最大的字体尺寸(频率最多的)
- “number”:则表示标签显示数量。
以上方法来自老四的博客:http://hezi.info/share/wordpress/wordpress-colore-tag.html
二、自定义颜色
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=(\’|\”)(.*)(\’|\”)/i’; $tag_link= preg_replace($pattern, “style=\”color:{$color};$2;\”", $tag_link); return “<a $tag_link>”; } add_filter(‘wp_tag_cloud’, ‘colorCloud’, 1);
想换啥颜色,自己到这里选择颜色代码替换上。
赏
转载请注明:https://xptt.com 无插件实现标签云彩色效果
分类:网络博客 标签:彩色,无插件,标签云,网络博客
上一篇:80后的我们
下一篇:阿根廷H线地铁能否开通到D线
嘿,学习.我也试试
OK,好好试试。
看着花哨 不过现在不喜欢了~~~
偶尔添加一女色彩,也不错啊。
嘿嘿 要是再加上浑天仪那种效果,估计也爽哦
简单的就OK了,太复杂了,估计没办法啊。
这挺不错的,方便查看标签
我也是这么认为的。呵呵
你这博客竟然支持那么多留言,太牛了啊
没听明白啊。
没明白意思。
好东西 学习一下
呵呵,最近不怎么折腾博客。
这个我用的emlog倒是本来就有这样的插件了,不过我是连标签都没有认真搞的
这个说得好,插件是标签插件,就是没彩色效果,这个方法不用到标签插件。