原因与方案
放弃 WordPress 的最主要原因是希望降低维护成本
- 没钱:vps 实例降级到内存 0.5GB 后跑不动 mysql + php 了
- 没时间:定期 wp 版本升级和不定期清理被黑客开了后门的系统
博客静态化方案的成熟是放弃的最直接原因。简单尝试了 Pelican,就把博客换成静态网站了。
过程记录
迁移 WP
https://blog.chenghu.me/bo-ke-qian-yi-wp-pelican.html
WP 导出 Posts 工具很多,比如自带插件 jekyll-exporter,以 markdown 格式导出 posts, pages 和 comments,但需要 WP 实例运行正常;还比如 Pelican 自带的 pelican-import,但需要以 WP Export 出的XML为源,转换我这上千篇文章需要好几分钟,而且过程磕磕绊绊的(解决异常中断问题)。
于是在 GitHub 上找了一些做参考,改写一个转换工具。3秒钟完成千篇文章转换。
- https://github.com/mlindgren/wp2octopress/blob/master/wp2octopress.py
- https://github.com/jekyll/jekyll-import/blob/v0.10.0/lib/jekyll-import/importers/wordpress.rb
构建 Pelican 项目
$ pelican mkdir mysite && cd mysite
$ mysite pelican-quickstart # 按提示完成快速初始化--主要是写publishconf.py
$ mysite pelican content # 在output生成静态站点
$ mysite cd output && python -m SimpleHTTPServer # 浏览器访问http://localhost:8000/
rsync 同步到服务器
参考资料
- http://docs.getpelican.com/en/3.6.3/quickstart.htm
- https://github.com/getpelican/pelican
- http://pelican-docs-zh-cn.readthedocs.io/en/latest/
- http://haridas.in/wordpress-blog-migrated-to-pelican.html