这是我通过的 GitHub pages 配合 hexo 主题采用 Fluid 搭建的个人博客。
之前经历过 Hexo, Typecho , Wordpress 最终还是回归 Hexo, 总结原因差不多一下这些
|
Wordpress |
Typecho |
Hexo |
结论 |
胜出 |
| 费用支出 |
服务器/域名 |
服务器/域名 |
\ |
服务器费昂贵, 还要考虑续费, 备案等问题 ; Hexo 配合 GitHub 完全免费 |
Hexo |
| 数据库 |
MySQL |
MySQL |
\ |
Hexo部署环境至简, 无需数据库 |
Hexo |
| 运行环境 |
Apache/PHP/MySQL |
Apache/PHP/MySQL |
纯静态页面 |
Hexo在本地直接生成了全部静态网页,这样发布到OSS都可以跑起来了 |
Hexo |
| 后台管理 |
非常专业的管理界面 |
专业的管理界面 |
Git命令行 + Markdown编辑器 + GitHub Actions 自动化发布 |
后者通过Actions自动化发布几乎与前者持平 |
前者 |
| 网络安全 |
要考虑补丁不断更新, 如果使用了插件还需关注插件的安全 |
要考虑补丁不断更新, 如果使用了插件还需关注插件的安全 |
纯静态页面,部署在GitHub基本不存在安全问题 |
Hexo在本地有完整的备份,结合Git发布,相当于机器猫的任意门了 |
Hexo |
| 其他 |
框架冗余/更换服务器迁移复杂 |
更换服务器迁移复杂 |
纯静态html文件 |
前者框架重依赖多, 后者纯html文件不其他依赖 |
Hexo |
再次选择 Hexo 希望回归到内容输出
一些定制语法
便签
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| {% note primary %} 文字 或者 `markdown` 均可 primary {% endnote %}
{% note secondary %} 文字 或者 `markdown` 均可 secondary {% endnote %}
{% note success %} 文字 或者 `markdown` 均可 success {% endnote %}
{% note danger %} 文字 或者 `markdown` 均可 danger {% endnote %}
{% note warning %} 文字 或者 `markdown` 均可 warning {% endnote %}
{% note info %} 文字 或者 `markdown` 均可 info {% endnote %}
{% note light %} 文字 或者 `markdown` 均可 light {% endnote %}
|
文字 或者 markdown 均可 primary
文字 或者 markdown 均可 secondary
文字 或者 markdown 均可 success
文字 或者 markdown 均可 warning
行内标签
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| {% label primary @内容为 primary %}
{% label default @内容为 default %}
{% label info @内容为 info %}
{% label success @内容为 success %}
{% label warning @内容为 warning %}
{% label danger @内容为 danger %}
或者
<span class="label label-primary">内容为 Label</span>
<span class="label label-default">内容为 default</span>
<span class="label label-info">内容为 info</span>
<span class="label label-success">内容为 success</span>
<span class="label label-warning">内容为 warning</span>
<span class="label label-danger">内容为 danger</span>
|
内容为 primary
内容为 default
内容为 info
内容为 success
内容为 warning
内容为 danger
或者
内容为 Label
内容为 default
内容为 info
内容为 success
内容为 warning
内容为 danger
勾选框
1 2 3 4 5 6 7 8 9 10 11
| {% cb text, checked?, incline? %}
{% cb 显示的文字, false, false %}
{% cb 显示的文字, true, false %}
{% cb 显示的文字, true, false %}
text:显示的文字 checked:默认是否已勾选,默认 false incline: 是否内联(可以理解为后面的文字是否换行),默认 false
|
text
显示的文字
显示的文字
显示的文字