今天正好有些空闲时间,就顺便把WordPress 1.5升级成了2.0,升级很简单,上传所有新文件,然后吧wp-config.php配置好,把原来旧的theme目录、.htaccess文件等拷贝过来,然后运行wp-admin/upgrade.php基本上就差不多了。
同时还是不要忘记添加mysql要求的set names(文件是wp-includes/wp-db.php):
function wpdb($dbuser, $dbpassword, $dbname, $dbhost) {
$this->dbh = @mysql_connect($dbhost, $dbuser, $dbpassword);
//加上下面这行
$this->query(‘SET NAMES “utf8″‘);
还有修改一下生成摘要的方式,参见更改WordPress自动生成摘要的方式。
一点点使用感受:
- 默认下载的版本好像没有带新的模板,所以仍然拿原来的模板用上了。
- 分类Category的链接地址处理和1.5有些不同,2.0可以在链接前面和网站地址之间添加“Category base”,这样分类页面的地址定制就更灵活了。
- 增加了缓存机制,缓存存在wp-content\cache目录下,如果发现更改设置没有生效,可以清空这个目录试一下。
- 增加了WYSIWYG所见即所得的编辑器,不过我更喜欢直接控制HTML的感觉,几个简单的b、link、img就足够我用了。
- Permalink定制的功能更强大和方便了,不过原来我用的.htaccess文件拿来照样能用。
- 依然会将单引号替换成‘ ’,双引号替换成”,源码中还发现了更多的替换条件。
- 后台管理界面更好看了,现在的蓝色背景和blogger有点像。
- 增加了导入其他blog或rss内容的功能,对有些朋友应该很有帮助。
- 没有了设置上传文件路径的选项,可能上传文件都要存储到wp自己的目录下面了吧。
update @ 2006-8-9
升级wp 2.0到2.04步骤完全相同,升级后启用了Akismet来防止spam。
Related posts
December 27th, 2005
Fwolf
通过RSS订阅、邮件转发自动同步多个Blog写得很仓促,以至于其中使用GMAIL设置自动转发部分没有经过充分的测试就写了出来,起初我发现Blogger能够正常自动发布,而msn spaces不能,查到原因可能是msn spaces只接受发件人为指定邮箱的,才能自动发布,而GMAIL的自动转发是不改变发信人信息的。这个我并没有通过调整msn spaces来尝试解决,因为我已经发现了新的问题。

http://www.rssfwd.com/在转发的过程中,会自动添加文章的原始地址(很好的事情,正是我需要的),但同时还会添加退订的链接以及广告等,广告也许忍忍就算了,但是退订的链接可不是个好玩的东西。由于http://www.rssfwd.com/的订阅和退订都是一下搞定,也许会有“好心人”,也许会有robot或spider会爬到这个可爱的链接上——因为你把他们公开了,从而自动给你退订了,或者添点儿别的乱子。
似乎没有一种自动转发RSS的服务能够很“干净”得转发RSS,http://www.feedblitz.com/好像只是每天发送汇总或摘要,http://www.feedburner.com/的邮件订阅也是由他提供的,也就是一样的功能,http://www.bloglet.com/和http://www.r-mail.org/我没有测试,但应该大同小异,老外也不会白白为你服务的,怎么也得加上个广告或宣传什么的。
其实有一点很重要,就是这些链接、广告既不安全,又会影响读者的阅读体验!
所以,我的解决方法是——手工转发!
这种方法是不是有点笨?没错,但是为了给读者提供最佳的阅读体验,这可能是目前最好的解决方案了。
- 大篇大篇的文章都写了,难道会怕转发邮件耽误太多时间,况且一般人的Blog每天的文章最多也就几篇而已。
- 手工转发,可以去掉http://www.rssfwd.com/转发时添加的广告和退订信息,并且保留文章的原始地址,去除糟粕,留其精华。
- 有的时候http://www.rssfwd.com/转发不能很好得处理文章中的SCRIPT,这样在转发的时候就可以适当处理一下了,最次也可以加个说明,提示大家到原始网站中看能够正常现实的页面。
- 邮箱里会有Blog全部内容的备份(废话),并且如果你习惯用EMAIL的形式向你的主Blog里张贴内容,就更没问题了。
在GMAIL中转发的时候,也不费事,把标题中的FW:…删掉,把正文中的“———- Forwarded message ———-”等删掉,然后把文章内容后面的附加信息和广告删掉就可以了。发信人可以统一设置一个联系人group,把所有要转发的目标地址都加入到这个group里,转发的时候就更方便了。其余的像email订阅,邮件发布等等,上一篇文章中写的方法还是能用的。
几乎今天整天都在围绕这个问题转悠,最后终于得出了一个囫囵的结论和最终方法,接下来就是等待时间的检验了。不过还要逐个把已经发布到Blogger和msn spaces的帖子删掉,实在是很累,尤其是Blogger,删帖那个麻烦啊
。
如果是自己编写的Blog程序,那么添加一个发帖自动发送邮件的程序就很轻松了,或者WordPress 2.0如果能带上发帖后自动发送邮件(多个收件人)就更爽了。
Related posts
December 26th, 2005
Fwolf
http://www.rssfwd.com/这个网站提供RSS自动转发功能,可以把你指定的RSS转发到邮箱里面去。
一些主流的Blog发布工具或发布网站,都具备邮件发布功能,既你给一个既定的地址发送邮件,就可以实现Blog内容的发布了。
以上两者结合起来,配上邮件的自动转发,就可以实现以一个Blog为主,同步更新其余的几个Blog了,下面是详细的做法。
初始条件:邮箱、RSS、Blog
首先你要有一个邮箱,这里我选用了GMAIL邮箱,因为它稳定、空间大、功能丰富。
然后你得有一个Blog作为你的主要Blog,可以使用Blog服务提供商提供的服务,是否支持邮件方式发布无所谓,只要能够正常更新就可以了,其余的Blog都将间接的从这里读取内容。这里我选用的是在自己空间上架设的WordPress。
最后,虽然Blog都带有RSS发布功能,但是为了方便管理,以及RSS地址的固定性,采用http://www.feedburner.com/来烧制你的RSS,在本例中,烧制好的RSS地址为http://feeds.feedburner.com/fwolf 。
利用自己的邮箱订阅RSS
这个订阅不同于一般用于RSS Reader的订阅,而是让http://www.rssfwd.com/把你的RSS的更新发送到你自己的邮箱里去,以便下一步的转发。步骤如下:
进入http://www.rssfwd.com/,输入你的RSS地址

然后输入自己的邮箱地址,点“订阅”

订阅完成

获得要同步的Blog的邮件发布邮箱
针对msn spaces,在“设置”->“电子邮件发布”中:
邮件发布地址就是 fwolf.secretcode@spaces.msn.com 。
针对Blogger.com,在“设置”->“电子邮件”中:
邮件发布地址就是 Fwolf.secretcode@blogger.com ,“发布”打钩意味着收到邮件立刻发布,而不是等待编辑或手工发布。
设置邮箱的自动转发
现在邮箱已经可以收到http://www.rssfwd.com/转发过来的Blog内容了,只需要再用过滤器发布转发到上一步设置的两个邮箱里面就可以了。

注意每个过滤器只能转发到一个邮箱里面去,如果有多个邮箱需要转发(目标是多个Blog),好像就不能在过滤器中把收到的邮件Archive存档了,不然只会有一个过滤器生效的(测试中)。
关于邮箱自动转发,请参见通过RSS订阅、邮件转发自动同步多个Blog(补遗),因为本文所述的通过过滤器进行转发的方式有诸多弊端,我可不愿误人子弟。
还可以通过Blogger.com的FTP发布功能把Blog发布到sitesled.com上去
http://www.sitesled.com/是一个免费空间,支持FTP上传,因此可以利用Blogger把你在Blogger生成的Blog发布到这个FTP上(发布成静态页面),由于blogspot仍然不能访问,这个方式是目前最好的方法了。
Blogger的FTP发布设置在“设置”->“发布”->FTP中,见下图:

本部分可参见woo wei’s blog: Blogger+Sitesled设置的详细说明。
Related posts
December 25th, 2005
Fwolf

每天WordPress都会收到几十个Spam留言,其中大部分是卖药、卖伟哥或者是赌博网站的,都可以轻易的被分拣出来。但是最近有一些留言,很明显是Spam,但是却都链接向正规新闻网站,而不是那些乱七八糟的网站。由于也看不懂那些英文到底说的是什么,所以我只能从链接网站的内容来判断是否真正是Spam。
- http://cityguide.aol.com/main.adp
AOL城市指南
- http://groups.google.com/
Google Group ??
- http://home.kyodo.co.jp/
-
- http://mdn.mainichi-msn.co.jp/
- http://news.bbc.co.uk/
BBC
- http://newsdirectory.com/
- http://www.alternet.org/
- http://www.ap.org/
- http://www.ananova.com/
- http://www.arabnews.com/
阿拉伯新闻
- http://www.bloomberg.com/
- http://www.cbc.ca/news/
- http://www.cbsnews.com/
- http://www.chicagotribune.com/
- http://www.chron.com/
- http://www.cnet.com/
- http://www.cnn.com/
CNN
- http://www.ctv.ca/
- http://www.dallasnews.com/
达拉斯,得克萨斯州
- http://www.detnews.com/
- http://www.dpreview.com/
- http://www.eweek.com/
- http://www.forbes.com/
福布斯
- http://www.foxnews.com/
福克斯
- http://www.indymedia.org/
- http://www.ipl.org/div/news/
- http://www.jpost.com/
- http://www.macnn.com/
- http://www.macworld.com/news/
- http://www.msnbc.msn.com/id/3032542/site/newsweek/
- http://www.news.com.au/
- http://www.newsforge.com/
- http://www.newscientist.com/
- http://www.npr.org/
- http://www.nydailynews.com/
纽约日报
- http://www.startribune.com/
- http://www.techweb.com/
- http://www.theage.com.au/
- http://www.theonion.com/content/index
- http://www.usnews.com/
- http://www.washingtonpost.com/
华盛顿邮报
- http://www.wn.com/
- http://www.osnews.com/
- http://www.zdnet.com/
这里面有名的报纸不少啊,快赶上英文新闻网站大全了,另外居然还有一些IT技术的网站,链接到这些网站有什么用呢?他们能得到什么好处?如果利用这些新闻网站作幌子,把自己网站的链接夹杂在里面浑水摸鱼倒有可能,但并不是全部的留言都是这样的,甚至其中大部分都不是。
还有一些是链接向正规电影网站的,同样不知道他们的目的是什么:
- http://movies.nytimes.com/pages/movies/
- http://movies.yahoo.com/
- http://rinkworks.com/movieaminute/
电影的1分钟剪辑?让你在1分钟之内全览电影,不过吹得挺高,内容倒没看到什么,最新更新也是在9月份
- http://rogerebert.suntimes.com/
- http://www20.sbs.com.au/movieshow/
- http://www.amctheatres.com/
- http://www.amctv.com/
- http://www.apple.com/trailers/
- http://www.archive.org/details/movies
- http://www.badmovies.org/
坏电影
- http://www.hollywood.com/
- http://www.imsdb.com/
- http://www.moviefinder.com/
- http://www.moviegallery.com/
- http://www.moviemaker.com/
- http://www.moviemistakes.com/
- http://www.movieworld.com.au/
- http://www.nbc.com/
- http://www.sho.com/
- http://www.simplyscripts.com/
各类脚本,电影、广播、电视、动画等
- http://www.walkthelinethemovie.com/
还有一些大片儿的网站:
- http://disney.go.com/disneypictures/narnia/
- http://harrypotter.warnerbros.com/
- http://www.fahrenheit911.com/
华氏911
- http://www.kingdomofheavenmovie.com/
天朝王国
- http://www.lordoftherings.net/
指环王
- http://www.miramax.com/chicago/
芝加哥
- http://www.sawmovie.com/
- http://www.serenitymovie.com/
- http://www.shrek2.com/
史瑞克2
- http://www.waroftheworlds.com/
世界大战
- http://www.whaleriderthemovie.com/
……太多了,不整理了,反正这些都是比较正规的网站,Spammer们贴这些东西,到底是要干什么啊?浪费带宽。
Related posts
December 19th, 2005
Fwolf
WordPress 在搜索或列 Archives(按时间、按分类)的时候,在列表中是显示帖子摘要的。原来我觉得这样不好,就把列表中显示摘要改成了在列表中显示全部帖子,使用一段时间以后发现很不好。
首先列表会变得很臃肿,失去了列表的本身作用——方便用户寻找真正想要看的帖子,其次,在搜索引擎抓取页面的时候,把那些列表页面也抓了过去,但随着帖子的不断增多,列表的更新远快于搜索引擎缓存的更新,用户使用搜索引擎进来以后,在列表中就很难找到目标了。
这样在列表中只显示摘要的优势就体现出来了,首先页面很清爽,用户可以清楚的找到要查看的目标,然后搜索引擎抓取内容的时候,会更多的关注页面的 Permalink,用户也就会通过搜索直达目标帖子,方便了用户。
打开 WordPress 的wp-includes\functions-formatting.php,找到其中的 function wp_trim_excerpt(about line 741),将如下代码
$excerpt_length = 55;
$words = explode(' ', $text, $excerpt_length + 1);
if (count($words) > $excerpt_length) {
array_pop($words);
array_push($words, '[...]');
$text = implode(' ', $words);
}
更改为
$excerpt_length = 3;
$words = explode("\n", $text, $excerpt_length + 1);
if (count($words) > $excerpt_length) {
array_pop($words);
array_push($words, '<p />......<a href="' . get_permalink($post->ID) . '">[阅读全文]</a>');
$text = implode("\n", $words);
}
就可以了,WordPress 默认的生成摘要是用空格来判断的,就是取到55个空格结束,这适用于西方采用空格作为词间隔的语言,但中文是不分词的,所以我使用读取3行的方式,取前3行,对哪种语言都是适用的。
Update @ 2007-02-09
升级到 WordPress 2.1以后,这个修改的地点变为wp-includes/formatting.php,第780行左右。
Update @ 2007-02-26
编写了一个插件,不用再手工修改代码了。
Update @ 2009-08-25
Betty全面总结了几种中文摘要方式,形成了一个综合的适合中文的摘要插件,并且提交到了WordPress 官网,带有简单的配置后台,很不错。
Related posts