显示标签为“Plugin”的博文。显示所有博文
显示标签为“Plugin”的博文。显示所有博文

2007年4月2日星期一

正在使用的WORDPRESS插件

在http://www.jianrongchen.net使用的WORDPRESS插件如下:

Collapsible More Link:提供展开收缩文章的功能,也即折叠功能。
CoolPlayer:国人开发的一个WP插件,可以播放几乎所有媒体,不过块头大了点。
External Links:提供在新窗口打开外部链接的功能。
Get Recent Comments:显示最新评论内容,WORDPRESS自带的只能显示帖子名和作者。
Google (XML) Sitemaps:自动生成网站的Sitemap,并通知GOOGLE和YAHOO,SEO插件之一。
Ultimate Tag Warrior:公认最强大的TAG管理插件,可以显示相关文章,相关标签,标签云等。
Google Sitemaps - UTW Tag Addon:把ultimate-tag-warrior生成的TAG加入Google (XML) Sitemaps生成的Sitemap中。
Pierre's Wordspew:生成一个AJAX效果的留言板,实时留言板。
Sidebar Widgets:一个图形化的侧边栏管理插件,有点像BLOGGER的LAYOUT。
ST Add Related Posts to Feed:在RSS FEED中加入相关文章。
:Tiger Style AdministrationWORDPRESS后台美化插件。
WordPress 缓存:提供对已访问页面的缓存,加快读取速度。
WP-AddQuicktag:方便地增加文章编辑器的标签,适合经常增加新插件的朋友。
WP-FLV:FLASH视频插件,块头挺小。
WP-PageNavi:替代WP原来的页面导航,改用 "共有 5 页: [1] 2 3 4 5 »"的形式。
Ajax-wp:能让Wordpress实现AJAX化的一个插件,安装有快速和定制两种方式。

阅读全文↓

去除链接中的"index.php"让WordPress实现全站AJAX

Ajax-wp是一个能让Wordpress实现AJAX化的一个插件,安装方便有快速和定制两种方式,当前版本为0.85。效果可见这里,我使用的是“定制”方式,点击链接时可以实现不用导入页眉、页脚和侧边栏,关于该插件的安装请看原文,在这里就不多说了。

作者的说法是所有链接结构Ajax-wp都可以支持,但是我使用“基于日期和名称”或“数字”时,该插件都会出现BUG,不知道大家有没有碰到这种情况,所以只能使用默认的链接结构了,也就是"homeroot/?p=123"的形式,但是使用这种结构时,页面导航都调用不了该插件,而要接所有的JS文件再LOAD一遍。

禁用该插件后,查看页面导航的链接发现是因为页面的链接使用了"homeroot/index.php?paged=X"的形式,因此只要删除"index.php"这几个字符也即改为"homeroot/?paged=X"的形式就可以让Ajax-wp发挥作用了。Google和Baidu了一圈都没有发现好用的解决方法,只能自己动手了。打开链接模版,路径在"/wp-includes/link-template.php",页面功能的函数为"function get_pagenum_link",研究了半天发现在这个函数里本来就有一句

$qstr = preg_replace("#/*" . $index . "/*#", '/', $qstr);
开发者在注释里说明这句的作用就是"trim the index":)。于是可以在后面加上这一句话,不论前面的$qstr如何替换,到最后把$index剪掉再赋值给$qstr就可以实现效果了。加入的位置见下面红色代码

if ( 1 === $pagenum ) {
$qstr = str_replace('page/1/', '', $qstr); // for mod_rewrite style
$qstr = remove_query_arg('paged', $qstr); // for query style
}
$qstr = preg_replace("#/*" . $index . "/*#", '/', $qstr);
return $qstr;
}

保存完成,体验一下什么叫Web2.0吧。除了评论基本上已实现AJAX化,AJAX评论的插件都与Ajax-wp有冲突,所以还是将就吧。另外把53K的protoype.js文件改为protoype.php让wordpress进行压缩,httpwatch测试了一下,文件大小减小为12K,传输时间大大减少。虽然这种方法让该文件要通过解释器解释,但是只读取一次,折衷吧,而且可以在浏览器CACHE调用。压缩的方法请见这篇文章,在这里不多说。

阅读全文↓