从WordPress转至Hexo——记一次网站程序迁移

1.迁移原因

在不久前,我出于种种考虑,将网站从WordPress迁移至Hexo。
倒并非说WordPress有多么不堪,相反的,我个人十分喜爱WordPress,以下是几点原因:

  • 强大的社区支持
    如果在使用WordPress的过程中遇到问题,搜索一下往往能得到答案。
  • 海量的主题与插件适配
    WordPress有各式各样的主题与插件,能轻松满足各种需求。
  • 古腾堡编辑器
    不同于很多人对古腾堡编辑器抱持敌意,我钟爱其编辑区域的区块设计,它提供给我视觉与操作逻辑上的极大舒适感。

但是,WordPress总让我产生安全性上的担忧。
WordPress在全球拥有不俗的流行度。根据W3Techs的数据,截至到2020.4.10,WordPress于CMS市场的占有率为**35.8%**。这在一定意义上促使产生许多专门针对使用此程序的攻击者。
烦恼随之而来😐:

  • 几乎每天都会有(机器)人(多数是外国IP)尝试登录我的后台
  • 有人会在我的网站“大展神通”,“展示”一系列网站侵入的高端操作
  • 外文垃圾评论也是屡禁不止……

当然,以上问题都是可解决的。限制登陆次数/类似于WordFence 的安全插件,更改登录地址,做好更新与备份工作,在function.php内插入禁止不含中文的评论的代码等等等等。
然而,起初这些“折腾”可能很有趣,但久而久之,这种对抗游戏逐渐变得沉闷而单调。至少对我而言,建立个人网站几乎是兴趣使然。我不希望有什么因素破坏我在整个过程中的好奇心与激情。

而Hexo实现了整站的完全静态化,安全也许不再是我需要密切关注的问题。

2.Hexo安装简介

再简单谈谈Hexo的安装。

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

Hexo支持Windows,Mac,Linux。
安装Hexo前,要求事先安装的程序如下:

  • Node.js (Node.js 版本不低于 8.10)
  • Git

接着,在管理员权限下执行以下命令即可安装:
$ npm install -g hexo-cli

之后,执行以下命令,在你指定的目录下创建网站:

1.建立网站

在”folder”目录下建立网站,例如:hexo init c:/website

$ hexo init <folder>

2.定位目录

定位到folder目录

$ cd <folder>

3.安装依赖

在指定目录下安装依赖文件(也就是”node_modules”文件夹)。

$ npm install

完成后,网站基本创建。可以在_config.yml文件中设定网站的配置信息,例如网站标题(title),副标题(subtitle),地址(url)等等。
有关写作,部署等操作直接看官方文档吧。
常用命令如下(在网站目录下执行):
hexo generate(生成静态文件)
hexo server(本地运行网站)
hexo deploy(一键部署网站)

3.迁移方法

迁移的流程非常简单,Hexo提供了转换WordPress导出文件的官方插件。以下来自Hexo的官方文档

1.安装插件

安装 hexo-migrator-wordpress 插件。

$ npm install hexo-migrator-wordpress --save

2.导出数据

在 WordPress 仪表盘中导出数据(“Tools” → “Export” → “WordPress”)(详情参考WP支持页面)。

3.迁移

插件安装完成后,执行下列命令来迁移所有文章。source 可以是 WordPress 导出文件的路径或网址。

$ hexo migrate wordpress <source>