4

转换SimplePhpBlog到WordPress

Posted by Elias on 十 13, 2008 in 个人网站的工具与思考

发现一直使用的SimplePhpBlog的防垃圾评论机制被突破了,与其修改源码改进其图像验证功能,干脆把整个博客迁移到WordPress了,或许这样今后的维护成本还小些。这里的数据迁移用到SimplePHPBlog import utility 网址上提供的Perl脚本工具,我进行了少量修改使之正确支持中文处理。我修改后的脚本可以从以下网址下载:WordPressImport.pl.zip 大致使用方法是:

  1. 首先,这个脚本是有程序版本要求的,SimplePhpBlog 0.4.8左右的版本应该没问题,WordPress则得是2.3.*,版本不对的话脚本会报错。
  2. 先用WordPress程序完成初始安装;
  3. 执行“./WordPressImport.pl -noratings -host localhost -user 数据库用户名 -password -wp_password WordPress的admin密码 -database 数据库名 -import sphpblog的所在目录”,然后按照提示输入数据库访问密码即可。
  4. 如果报错,通常是因为缺少Perl的必要运行库引起的,已知应该会用到Data::Format和DBD::mysql,可以考虑使用cpan安装。
  5. 登陆WordPress后台,检查数据正常之后,可以将WordPress升级到最新版本,并安装喜欢的插件。
  6. 建议安装并激活Word Press里面的bbcode插件,因为我遇到原先SimplePhpBlog中使用的一些编辑语法可能未被完全转换,比如有些url链接仍然是用的bbcode语法。激活bbcode之后移植过来的数据基本上又可以正常显示了。(BBCode 1.0.1版本对标签的解析存在一点Bug,会生成带多余等号的链接地址,参见关于本站页面的说明。
  7. 目前文章中引用站内图片路径都是错的,所以显示不出来。把原先SimplePhpBlog里面images目录整个传到WordPress的“wp_content/uploads”目录下,然后修改并执行以下sql语句来修复站内图片链接:“update wp_posts set post_content = replace(post_content,’src=images/’,'src=http://www.YOURSITE.cn/YOUR_BLOG/wp-content/uploads/images/’)”。于是图片也能正确显示了。这里的写法和WordPress自带的媒体库管理工具一样,使用的是该死的绝对路径,将来修改博客的域名或地址时还得再重新改站内图片路径。
  8. 这样日志、评论、展台都能够被正确移植过来。也许因为我的文章分类信息全是中文,迁移后的文章全部变成没有分类了,可以试着用Word Press的“Batch Categories”插件来批量调整。但我在修改了默认分类的名字之后,Batch Categories就死活搜索不出来已有文章了,最后我手工一个个调整的文章分类。建议尝试一下在导入SimplePhpBlog数据后,在旧版本的WordPress上使用“Batch Categories”试试,如果调整成功了再继续升级WordPress。

Ps:转换完了感觉有一点不满意:友情链接是按字母排序的,恐怕有些兄弟姐妹难免会对排座次有意见。

标签:, ,

Elias的邪异门 is proudly powered by WordPress.(京ICP备10013669号 瑞豪开源提供VPS)Theme design by Laptop Geek.
Copyright © 2018 All rights reserved. Entries (RSS) and Comments (RSS).