標籤雲是很多 WordPress 主題都有的一個主題元素,今天就講講如何為你的主題新增彩色標籤雲,包括邊欄呼叫和頁面呼叫。
1. 呼叫標籤雲
我們可以使用 wp_tag_cloud() 函式實現標籤雲的呼叫。比如下面的樣例:
- <?php wp_tag_cloud('smallest=12&largest=18&unit=px&number=0&orderby=count&order=DESC');?>
程式碼註釋:
smallest 表示標籤的最小字號
largest 表示最大字號
unit=px 表示字型使用畫素單位
number=0 表示顯示所有標籤,如果為 40,表示顯示 40 個
orderby=count 表示按照標籤所關聯的文章數來排列
order=DESC 表示降序排序 (ASC 表示升序排序,DESC 表示降序排序)
更多 wp_tag_cloud() 引數,請參考 WordPress 檔案 wp tag cloud
2. 新增彩色功能
根據上面的引數,你已經可以呼叫出標籤雲了,將下面的程式碼新增到主題的 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);
3. 製作標籤雲頁面
你可以看看主題貓的標籤雲頁面:http://ztmao.com/tags
1) 複製你主題的 page.php 檔案,在該檔案的頂部新增:
2) 使用下面的程式碼替換 page.php 中的 :
- <?php wp_tag_cloud('smallest=12&largest=18&unit=px&number=0&orderby=count&order=DESC');?>
3) 該頁面一般不需要評論功能,刪除 page.php 中下面的程式碼:
- <?php if (comments_open()) comments_template( '', true ); ?>
4) 你還可以根據自己的需要,刪除 page.php 中的某些功能,最後將該檔案另存為 page-tags.php ,這樣,一個標籤雲模板就做好了。
5) 訪問 WP 後臺-頁面-新建頁面,頁面名稱自己填,只需要在 頁面屬性 中,選擇 tags 模板即可:

4. 邊欄中呼叫標籤雲
你可以使用下面的函式呼叫,具體的修改方法,就靠你自己折騰主題了:
- <?php wp_tag_cloud('smallest=12&largest=18&unit=px&number=20');?>
不過,一般製作比較規範的 WordPress 主題,都支援 Widget 小工具,你可以在 WP 後臺-外觀-小工具 中檢視是否支援 標籤雲小工具。
說明:本文只是告訴你如何實現彩色標籤雲,以及如何呼叫。但是具體的樣式,就要靠你自己透過 CSS 程式碼實現了。