经过一段时间的适配,目前 Dream 已经发布了基于 Halo 2.x
的第一个预发版本。目前对主题所有功能都完成了适配,但是由于 Halo 2.x
与 1.x
的一些不同,以及 Thyeleaf
模板引擎与 FreeMaker
模板渲染引擎的一些不同的特性,适配前与适配后在具体功能上还有一些明显的差异。
目前也有一些博主对是否升级 Halo 2.x
持观望态度,本文从 Dream
主题的角度出发,阐述了 Halo 2.3.0
版本与 1.6.1
这两个版本上的一些不同之处。
先放上适配前后的主题截图:
一、关于主题配置
Halo 2.x
引入了 repeater
与 code
配置类型,主题配置以及元数据的配置更加的美观优雅,特别表现在侧边栏这一块的配置,不会再像之前那么繁琐。其他的一些列表型的配置项也可以不再用 “|” 做分隔。
这是非常好的一个优化点。
二、一些功能的缺失
2.1 RestAPI
很遗憾的一点是,Halo 2.3.0
目前应该是没有 RestAPI
的,这导致一些点赞这类的功能将无法实现,以及 mew-link
这类通过 RestAPI
实现或增强的自定义标签失效。
2.2 相册、日志与友链页面
Halo 2.x
版本计划是不内置这些功能的,希望通过插件进行实现,但目前也是没有相关的插件能够进行实现的,所以这些功能页面目前都是缺失状态。
2.3 友链与最近评论侧边栏
友链侧边栏是因为没有了友链功能而丧失的,最近评论这个侧边栏因为没有找到合适的 Finder API
也是缺失状态,后续可能会随着 Halo
的版本迭代进行侧边栏的补充。
2.4 增强功能
在 Halo 2.x
不再能支持 Html
文本内容压缩了,还有在主题配置界面注入 Logo
和交流群的功能也不再支持了。
2.4 文艺风模板
还有一个文艺风文章模板,由于目前主题开发文档没有关于文章模板这块相关的说明,所以这块功能目前也没实现。
三、关于插件
我从一个主题开发者的角度考虑,其实我是非常不愿意插件过多地干涉到前端展示过来的,更希望插件专注于后端功能的丰富,主题专注于前端页面的美化。
从开发层面考虑,前端的显示就有些脱离了主题的掌控,一些 JS/CSS
的引入是否会互相影响,以及脚本引入可能会导致 Pjax
的实现受阻等等……从用户角度考虑,不同插件可能都有着自己的风格,他们不一定能够与主题的风格完美结合,例如看板娘的风格,例如搜索插件与评论插件的黑夜模式适配。
3.1 搜索插件
Halo 2.x
搜索功能通过搜索插件实现。
3.2 评论插件
Halo 2.x
搜索功能目前也通过内置的评论插件实现,使用不再是主题内置的评论插件,这个对 Dream
来说变化还是比较大的,一些原先 Dream
内置评论插件相关的功能目前已全部移除。
3.3 看板娘插件
由于 Halo 2.x
目前已有一个看板娘插件,功能配置相比于主题内置的看板娘插件也更为丰富,所以适配后主题移除了内置的看板娘插件,如果需要看板娘需要通过插件引入。
四、功能变化
4.1 代码块
还有关于代码块相关的功能,目前在主题上依旧是支持通过 |
分隔指定代码块名称,但是这也需要编辑器的支持,如果使用的编辑器不能直接使用 MarkDown
文档,那也是没办法实现的。
4.2 首页大图
适配前的首页大图是通过给置顶文章添加轮播元数据配置实现的,将部分文章作为了大图轮播的素材。但是这种方式在 Thymeleaf
模板下不是很好实现,所以改为了通过主题后台配置的方式选择大图轮播内容。