高效率WordPress缩略图插件:Random Post with Picasa Image
本人写的第一个插件,高效率的WordPress缩略图插件《Random Post with Picasa Image》,用Google Picasa的外链缩略图显示wordpress博客的随机日志。
我是鸟类网的站长,使用WordPress以来,一直没能找到一款满意的随机图片日志插件,目前的随机图片/缩略图片插件都存在各种问题:
1.有些插件如《Random Post with Image》不能显示真正的缩略图,仅仅是加一个width和height属性,导致图片扭曲变形,效果很难看。
2.有些能生成真正的缩略图,但仅限于本地图片,不能处理外链图片。而很多博客为了减轻服务器负担,图片多为外链。
3.《Post Thumb Revisited》功能超级强大,能满足一切要求。但是特别消耗资源,试用这款插件的时候,本站所在的服务器经常被当掉。我试图在本地php环境利用Post Thumb Revisited制作缩略图,apache进程的CPU和内存占用惊人,服务器完全失去响应。
4.大部分相册插件都操作复杂。
一直很羡慕煎蛋和鸸鹋侧边栏的随机日志图片样式,小巧的六格图片,风格紧凑,很有新意。煎蛋服务器很强大,不能比; 鸸鹋是手动加的,冏。
今天我忙活了一晚上,自己动手写了这个插件:Random Post with Picasa Image。首先申明,我不懂PHP,也不懂CSS,全靠平时修改模板累积的经验,如果有写得奇怪的地方,请务必指正。本来我只是添加些php语句到模 板,写着写着发现做成插件简洁得多,结果写出了我的第一个WordPress插件。
插件名称:
《Random Post with Picasa Image》
插件功能:
1.首页文章缩略图效果,效果基本等同于仲子说的首页文章缩略图显示插件《Image For Homepage》,即选取文章的第一张图片作为缩略图,可以处理站内和外链picasa图片。
2.随机图片日志效果,即可以在站内任何地方显示随机缩略图片(图片来自picasa),图片链回原日志。如果你想链回大图,可以自己修改插件,^_^。
插件局限:
插件几乎完全局限于picasa图片,如果你的网站大量使用Google Picasa外链图片,那么这款插件很适合你。为什么要使用picasa做缩略图,看看WP插件Easy Picasa作者给出的这张图片:

picasa外链图片功能非常强大,你上传的每一张图片,都会自动生成不同大小规格的副本,如表中两列所示,有多种规格的图片供你外链到你的博客, 更有意思的是,picasa为你生成了多种正方形裁减的缩略图,这样你完全可以省去制作缩略图的步骤,节省空间资源,直接利用picasa缩略图片显示随 机图片日志。
插件Random Post with Picasa Image完全为此而生。
插件优点:
非常高效,通过访问自定义字段picasathumb并自动填充维护该字段,大大减少了数据库访问,如果你的图片多为picasa图片,数据库访问开销几乎可以不计。
插件下载:
链接为最新版本:Version 1.01
http://niaolei.org.cn/wp-content/uploads/2009/05/random_post_with_picasa_image.zip
插件主页:
http://niaolei.org.cn/posts/4012
插件使用:
第一步,安装插件之前务必先添加一个自定义字段,名字叫做picasathumb(不能是别的名字),如何添加自定义字段,很简单,打开一篇已经发 表的文章,然后编辑,在编辑框下面就可以添加自定义字段了,你只需要添加一次,以后每篇文章的picasathumb都会自动维护,不需要你手动添加缩略 图地址。(当然,如果你觉得某篇文章的缩略图不够漂亮,手动添加另一张图片的url地址作为picasathumb也完全可以)。
下载,上传,激活。(如果激活时提示文件不存在,请去已安装插件列表,可以看到已经激活了)
这里有三个函数,分别对应不同功能,需要你手动把它们放到正确的位置:
1. <?php picasa_image_for_homepage(); ?>: 在首页显示缩略图,默认宽度为144像素,如果你需要显示其他规格如72,64等,请在插件中修改。将如下代码放置在首页index.php循环体内,即 the_content或者the_expert前面。
<div class=”PostContent” >
<?php picasa_image_for_homepage(); ?>
<?php the_content(”); ?>
</div>
<div class=”clear-float”> </div>
默认放置在右边,使用CSS: class=’indeximg’.缩略图的显示肯定要结合CSS才能正确显示,我给出参考CSS代码,修改自鸸鹋的主题。
.clear-float{clear:both} /* 用来清除上文样式 */
.indeximg img {
width: 144px;
display: inline;
padding-top: 2px;
padding-left: 10px;
padding-bottom: 10px;
overflow: hidden;
height: auto;
}
.indeximg {
display: inline;
float: right; /* 表示靠右文字环绕 */
}
2.<?php picasa_image_for_random_post(); ?> :在任意位置显示随机图片,图片链接指向图片所在的文章。默认显示6张,你可以自由设置显示多少张,加一个数字即可。如<?php picasa_image_for_random_post(12); ?>显示12张。这里给出参考CSS(来自鸸鹋),如显示多行多列的随机缩略图(背景颜色和宽度,间距请自己调整):
#imgfun .funcenter {
border-right-width: 1px;
border-left-width: 1px;
border-right-style: solid;
border-left-style: solid;
border-right-color: #e6e6e6;
border-left-color: #e6e6e6;
background-image: url(images/imgfun_bg.png);
background-repeat: no-repeat;
background-position: 0px 0px;
overflow: auto;
width: 280px;
padding-left: 2px;
}#imgfun .funcenter img {
border: none;
float: left;
padding-left: 0px;
padding-right: 15px;
padding-top: 7px;
padding-bottom: 7px;
}
相应的php代码:
<div id=”imgfun”>
<div class=”funcenter”>
<?php picasa_image_for_random_post(6); ?>
</div>
</div>
3.<?php update_picasa_thumb_meta(); ?>:自动更新维护自定义字段picasathumb。必须放置在单篇日志single.php中,这样该文章只要被访问一次,就会自动从日志中寻 找第一张picasa图片作为缩略图,将它的url地址填充进自定义字段picasathumb。放置位置可以是single.php任意位置,建议放置 在循环体内,the_post()下方:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php update_picasa_thumb_meta(); ?>
插件历史:
1.0.1 (2009.5.7)
识别picasa各种规格图片:大于72的图片都转化为72-c的剪裁缩略图。
1.0 (2009.5.6)
完成插件,实现以下功能:
首页文章缩略图;
任意位置展示picasa缩略图片,链回原日志;
自动更新维护自定义域picasathumb.
插件提醒:
本人水平有限,程序中基本上没有加上对各种条件的检查,只在WP2.7下测试过,如有bug请一定指正。我不会多扩展功能(除非很有用并且实现也比较简单的功能),但是会一直维护这个插件。安装使用过程中遇到问题,欢迎留言询问,我会及时回答。联系我:插件主页。
欢迎一同修改扩充我的插件。
本文转载自鸟类网,原文链接:http://niaolei.org.cn/posts/4012
原创文章转载请注明:锐博_资源资讯共享网










Eric,
下面的CSS我修正了一下,兼容IE6
好样的,至此FF、IE6-IE8,傲游都完美支持了!
更新到了1.1,改动比较大,呵呵。
Well done!
可惜picasa不幸遇难
已经升级到新的日志缩略图插件,Thumbnails Anywhere啦。
一直找不到合适的缩略图插件