首页 > CMS > Wordpress > 正文

WordPress实现彩色标签云方法介绍

2024-09-07 00:50:00
字体:
来源:转载
供稿:网友

彩色标签云我们在很多的网站都可以看到此类效果了,下面我来给现在使用最多的个人博客系统wordpress来介绍如何实现彩色标签云.

这种彩色标签云效果可以通过修改Simple Tags来显示。

1.在simple-tags.client.php中先找到如下代码:

function getColorByScale($scale_color, $min_color, $max_color)

2.注释掉(或者删除)getColorByScale这个function中的以下语句:

  1. $scale_color = $scale_color / 100; 
  2. $minr = hexdec(substr($min_color, 1, 2)); 
  3. $ming = hexdec(substr($min_color, 3, 2)); 
  4. $minb = hexdec(substr($min_color, 5, 2)); 
  5. $maxr = hexdec(substr($max_color, 1, 2)); 
  6. $maxg = hexdec(substr($max_color, 3, 2)); 
  7. $maxb = hexdec(substr($max_color, 5, 2)); 
  8. $r = dechex(intval((($maxr - $minr) * $scale_color) + $minr)); 
  9. $g = dechex(intval((($maxg - $ming) * $scale_color) + $ming)); 
  10. $b = dechex(intval((($maxb - $minb) * $scale_color) + $minb)); 

3.加上以下代码:

  1. //Colorful Tag Cloud start 
  2. $r = dechex(rand(0,255)); 
  3. $g = dechex(rand(0,196)); 
  4. $b = dechex(rand(0,255)); 
  5. //Colorful Tag Cloud end至于要显示多少个标签,怎么排列,热门标签和普通标签分别为多少大小的字体,可以在后台的Simple Tags的选项中设置. 

方法二,如果上面办法不可以我们可参考如下办法。

后台编辑 主题 的 functions.php,输入以下代码:

  1. function colorCloud($text) {  
  2. $text = preg_replace_callback('|<a (.+?)>|i''colorCloudCallback'$text);  
  3. return $text;  
  4. }  
  5. function colorCloudCallback($matches) {  
  6. $text = $matches[1];  
  7. $color = dechex(rand(0,16777215));  
  8. $pattern = '/style=('|")(.*)('|")/i';  
  9. $text = preg_replace($pattern"style="color:#{$color};$2;""$text);  
  10. return "<a $text>";  
  11. }  
  12. add_filter('wp_tag_cloud''colorCloud', 1); 

可以看到,颜色是随机的,可以自行修改 $color = dechex(rand(0,16777215)); 这行来修改范围,这样就很炫耀哈哈,然后在侧边栏 sidebar.php 里调用如下代码:

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

即可,8 是最小的 tag 的字体大小(用的最少的 tag),24 是最大的(用的最多的 tag),50 是 tag 的数目,可以自行修改.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表