首页 > CMS > Wordpress > 正文

WordPress随机显示彩色标签云例子

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

WordPress有一个自带的标签云功能,可能有时候会觉得这个功能过于单调,所以,今天就来教大家如何将WordPress的标签云变成彩色的.

插件版

下载地址:http://downloads.wordpress.org/plugin/colorful-tag-cloud.zip

纯代码教学

将下方代码添加到“布景函式库(functions.php)”的最底部 ?> 之前,然后点击“更新档案”就行啦,代码如下:

  1. /* 设定彩色标签云开始(由PHPFENSI.COM制作) */ 
  2. function colorful_tag_cloud_callback($matches) { 
  3.     $text = $matches[1]; 
  4.     for($a = 0; $a < 6; $a++){ 
  5.         $color .= dechex(rand(0,15)); 
  6.     } 
  7.     $pattern = '/style=(\'|\")(.*)(\'|\")/i'; 
  8.     $text = preg_replace($pattern, 'style="color: #'.$color.';"', $text); 
  9.     return "<a ".$text.">"
  10.     unset($color); 
  11.  
  12. function colorful_tag_cloud($text) { 
  13.     $text = preg_replace_callback('|<a (.+?)>|i''colorful_tag_cloud_callback', $text); 
  14.     return $text; 
  15. add_filter('wp_tag_cloud''colorful_tag_cloud', 1); 
  16. /* 设定彩色标签云结束 */ 

补充:修改wordpress标签云字体大小,排序顺序,显示数量等.

接下来,要修改 wordpress 程序用来控制显示标云的函数 wp_tag_cloud()

该函数位置在 wp-includescategory-template.php 文件中,搜索 wp_tag_cloud 找到相关参数进行修改.

找到默认的 wp_tag_cloud() 函数如下所示的位置:

  1. function wp_tag_cloud( $args = '' ) { 
  2.     $defaults = array
  3.         'smallest' => 8, 'largest' => 22, 'unit' => 'pt''number' => 45, 
  4.         'format' => 'flat''separator' => "n"'orderby' => 'name''order' => 'ASC'
  5.         'exclude' => '''include' => '''link' => 'view''taxonomy' => 'post_tag''echo' => true 
  6. ); 

wp_tag_cloud() 函数参数解释:(主要改动这两行代码,其它不需要理会),代码如下:

  1. 'smallest' => 8, 'largest' => 22, 'unit' => 'pt''number' => 45, 
  2. 'format' => 'flat''separator' => "n"'orderby' => 'name''order' => 'ASC'

wp_tag_cloud() 函数参数使用举例:修改成以下样式,显示效果就是本博客的标签云样式,代码如下:

  1. 'smallest' => 10, 'largest' => 14, 'unit' => 'pt''number' => 80, 
  2. 'format' => 'flat''separator' => "n"'orderby' => 'count''order' => 'DESC'

smallest:设置标签云中显示的所有标签中,计数最少(最少文章使用)的标签字体大小,默认值为 8pt 。

largest:设置标签云的所有标签中,计数最多(最多文章使用)的标签的字体大小,默认值为22pt。

unit:标签文字字号的单位,默认为pt,可以为px、em、pt、百分比等;

number:设置标签云中显示的最多标签数量,默认值为45个,设置为”0″则调用所有标签;

format:调用标签的格式,可选”flat”、”list”和”array”,默认为”flat”平铺,”list”为列表方式;

separator:(字符串)(可选)标签之间的文本/空格。默认值:’/n’ (空格);

orderby:设置标签云中标签的排序方式,默认值为”name”按名称排序。如果设置成”count”则按关联的文章数量排列;

order:排序方式,默认为”ASC”按正序,”DESC”按倒序,”RAND”按任意顺序;

exclude:排除部分标签,输入标签ID,并以逗号分隔,如”exclude=1,3,5,7″不显示ID为1、3、5、7的标签;

include:包含标签,与exclude用法一样,作用相反,如”include=2,4,6,8″则只显示ID为2、4、6、8的标签;

link:(字符串)(可选)设置链接,允许编辑某个指定标签。有效值包括:’view’ (默认值)、‘edit’;

taxonomy:(字符串)(可选)用以生成云的分类法。’post_tag’将文章标签当作云的来源(默认值) 、’category’ 用文章分类生成云 、’link_category’用链接分类目录生成云;

echo:(布尔型)(可选)显示结果,或将结果保留在变量中。默认值为true(显示标签云)。有效值包括:1 (true) 默认值 、0 (false) 。

提醒:以上标签参数皆可选,可自由搭配使用.

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