WordPress有一個自帶的標簽云功能,可能有時候會覺得這個功能過于單調,所以,今天就來教大家如何將WordPress的標簽云變成彩色的.
插件版
下載地址:http://downloads.wordpress.org/plugin/colorful-tag-cloud.zip
純代碼教學
將下方代碼添加到“布景函式庫(functions.php)”的最底部 ?> 之前,然后點擊“更新檔案”就行啦,代碼如下:
- /* 設定彩色標簽云開始(由PHPFENSI.COM制作) */
- function colorful_tag_cloud_callback($matches) {
- $text = $matches[1];
- for($a = 0; $a < 6; $a++){
- $color .= dechex(rand(0,15));
- }
- $pattern = '/style=(\'|\")(.*)(\'|\")/i';
- $text = preg_replace($pattern, 'style="color: #'.$color.';"', $text);
- return "<a ".$text.">";
- unset($color);
- }
- function colorful_tag_cloud($text) {
- $text = preg_replace_callback('|<a (.+?)>|i', 'colorful_tag_cloud_callback', $text);
- return $text;
- }
- add_filter('wp_tag_cloud', 'colorful_tag_cloud', 1);
- /* 設定彩色標簽云結束 */
補充:修改wordpress標簽云字體大小,排序順序,顯示數量等.
接下來,要修改 wordpress 程序用來控制顯示標云的函數 wp_tag_cloud()
該函數位置在 wp-includescategory-template.php 文件中,搜索 wp_tag_cloud 找到相關參數進行修改.
找到默認的 wp_tag_cloud() 函數如下所示的位置:
- function wp_tag_cloud( $args = '' ) {
- $defaults = array(
- 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
- 'format' => 'flat', 'separator' => "n", 'orderby' => 'name', 'order' => 'ASC',
- 'exclude' => '', 'include' => '', 'link' => 'view', 'taxonomy' => 'post_tag', 'echo' => true
- );
wp_tag_cloud() 函數參數解釋:(主要改動這兩行代碼,其它不需要理會),代碼如下:
- 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
- 'format' => 'flat', 'separator' => "n", 'orderby' => 'name', 'order' => 'ASC',
wp_tag_cloud() 函數參數使用舉例:修改成以下樣式,顯示效果就是本博客的標簽云樣式,代碼如下:
- 'smallest' => 10, 'largest' => 14, 'unit' => 'pt', 'number' => 80,
- '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) 。
提醒:以上標簽參數皆可選,可自由搭配使用.
新聞熱點
疑難解答
圖片精選