乱舞峰云

不用插件让Tag Cloud变彩色及更改字号

一直以来用的就是wp-cumulus,也一直觉得挺炫的,可是今天突然之间发现了一个重要问题,那就是所有的中文标签都没有显示。GOOGLE了半天,问题的原因是知道了,解决方法也大概知道了,那就是下载FLA文件,然后自己嵌入中文需要的字,折腾半天整理出来常用的500个汉字嵌入后,明明一步步按着牛人写的教程来干的,可是死活就是一个字都出不来。

于是没有办法,只好重归原来的素颜Tag,真不甘心,便想就算不能3D转,也要色彩缤纷一些。以下是实际使用有效的办法。

在主题的function.php或是wp-includes里面的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);

这样就解决了彩色标签的问题,(0,16777215)可以随便设置。可是有时字体太小,想改变的化就要再加一个函数,因为2.8版后的wordpress增加了一个filter,叫做widget_tag_cloud_args,取代了原来直接使用’unit=px&smallest=8&largest=20′的方法,而我在default-filters.php中没有找到这个filter,于是在上面代码下加另一段:

function tag_cloud_filter($args = array()) {
$args['smallest'] = 13;
$args['largest'] = 30;
$args['unit'] = ‘px’;
return $args;
}
add_filter(‘widget_tag_cloud_args’,'tag_cloud_filter’, 90);

当然你也可以尝试使用原来的方法,我试过不如这种效果好。然后设定你希望的大小号就可以了。

至此tag cloud的问题就结束了,另外总觉得RSS widget的图标在那放着难看,这个只需要简单地进入default-widgets.php里搜索RSS widget class后,删除里面的icon行及链接里的<img />段就行了。此次折腾发现2.8 WordPress 中增加了好多的新函数啊,到处都是Since 2.8。

纪念世界无车日-全面改版

今天是传说中的世界无车日,加之我的夏利刚刚卖掉,我也算是配合了无车日活动,于是选择今天正式改版博客上线。
一直想自己设计一套模板,可是技术太滥,请人设计没必要且过于浪费,于是乎选择了一个折衷的方法,改别人的模板,加自己的特色。
把原来设计方案中的圆角矩形Banner切成有边有角的长方型放进来,稍微调节了一下所有的字体及颜色CSS,增加了广告widged,删除不用的部件及函数,于是乎一个崭新的博客外观诞生了。
大猫的博客上抄袭了wp-thread-comment,然后增加wp-pagenavi,wp-t-wap等插件,由于服务器不支持phpmail()函数,只能曲线救国安装wp-mail-smtp插件,Twitter国内被墙,不过还可以通过API连接上线,于是装了Denis的Thread Twitter,没有人推我啊。
现在有两个其他功能想实现,不知哪位大侠能帮我一下:
1. 想建立一个GOOGLE APPS的登录页面。
2. 想建立一个类似微博的页面,用于记录不需要整篇博客的无聊小事。