之前在 WordPress 上写博客,用着一个叫 Adams 的极简主题,以及大量好用的插件,一切都是那么美好。知道有一天,我觉得这个主题少了一个点赞的功能,而装上了点赞插件却无法使用,样式还巨丑,于是我决定自己动手开发主题。

我一直都有自己从零开发一个博客主题的想法,而开发什么博客的主题就成了首要考虑的问题。 WordPress 基于 PHP 开发,所以想开发 WordPress 主题就得先学 PHP 。早就听过 「PHP 是世界上最好的语言」,二话不说便打开菜鸟教程,学习 PHP

谁知 PHP 巨坑无比,被称为 「最好的语言」 不是没有道理的。用 PHP 写主题,需要用<?php ?>把代码包起来,再塞到 html 里面,整体代码看起来非常混乱,对于有强迫症的人来说,就是一坨*。

特意上网查了 PHP 的代码规范,几乎没有帮助,甚至发现随意的代码风格是很多人喜欢 PHP 的理由。最过分的是,PHP 中的关键词,也没有一个统一的命名风格,有的大写,有的小写,有的简写,有的全拼。据说早期版本的 PHP,作者通过对变量名称进行哈希计算来实现某些功能,所以变量名尽可能的不一致,从而让哈希值更分散。。。

我毅然决然抛弃了 WordPress,在我考虑要不要回到静态博客的时候,我发现了 Halo 这个好家伙。

基于 Java,支持 markdown,附件可直接上传阿里云 OSS,并且默认使用 h2 数据库!

而我最关心的主题开发,用的是一个叫 Freemarker 的模板引擎,虽然还不清楚是什么东西,但总比用 PHP 生写要好。

Halo 相当于一个 Java 应用程序,将其作为服务运行就可以,因为 h2 数据库是嵌入的,也不需要另外启动数据库服务,整个部署过程还是比较简单的。

服务器也从香港搬回北京了,因为不再使用 WordPress 了,那些需要连接外网的升级服务也没有了。搬回大陆的服务器还能节省一笔费用。同时还启用了尘封已久的 OSS,以后图片都放在上面,再配上 CDN,不仅提升访问速度,还能减轻主站服务器的负担。

Halo 虽然是小众博客框架,但社区还算活跃,我在 GitHub 上提交的 issue 第一时间得到了反馈,开发组现在生在改进编辑器。总之 Halo 还是很有潜力的。

倒不是说 Halo 吊打 WordPress,只能说各有优劣,我更喜欢 Halo 。最后放个 WordPressHalo 的对比吧,根据自己需要选择。

功能WordPressHalo
插件扩展有海量插件,后台插件市场一键安装没有插件的概念,需要自己开发功能
Markdown有插件能让 WordPress 识别 markdown,但文章存储形式还是 html支持,解析器为 flexmark-java
LaTeX 数学公式有插件原生支持
文章编辑器功能比较丰富,有很多小工具可以配合插件使用,自带可插入文章的小相册功能markdown 方式编辑,样式要么依靠主题渲染,要么自己在 markdown 里写 css 。目前还没有很好的方法插入相册,只能手写 html
图片上传只能上传到本地,可镜像到 OSS,再通过插件替换图片链接为 CDN原生支持本地上传、 OSS 上传
数据库MySQL默认 h2,也支持 MySQL
SEO 配置有插件,可以做到很复杂的配置原生支持简单的配置
本地数据统计有插件,可记录很详细的访客信息自带记录访问量,没有其它数据
第三方统计有插件支持
友链可通过插件实现,但不怎么好用,还得看主题支持
性能够你用了个人博客完全足够
稳定性我是用期间没有出现过问题偶尔服务会重启,可能是因为分配的内存太小,但设置了自动重启服务,所以不需要操作,过一会就好了
配置要求因为需要开启 MySQL 服务,所以配置要求比 Halo 高一丢丢1 核半 G 的配置,配合 OSS+CDN,博客前期完全足够了
订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论