WordPress的标签云根据数目的多少来显示标签的大小排序,颜色比较单调。如果我们可以给它加一个不同的颜色,无疑会更加引入注目。
只需要在function.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); //$text = preg_replace($pattern, "", $text); return "<a $text>";} add_filter('wp_tag_cloud', 'colorCloud', 1);
在需要的地方调用:
<?php wp_tag_cloud('smallest=15&largest=40&number=50&orderby=count'); ?>
官方文档:wp tag colud