个人博客从 Hexo 迁移至 Hugo

2022-02-25 17:44:44 浏览数 (1)

电脑升级 win 11 后,分盘操作存在 bug, 然后又不小心把装代码的盘格式化了,虽然都有备份到 github, 但是当时为了省事,hexo Node 安装的很多以来插件都没有备份,现在又下载不到了,所以 hexo 博客没办法完整复原,另外,早就觉得基于 Node 的 hexo 实在有些臃肿,且博客内容多了以后部署太慢,就干脆乘机换了好了,经过一段时间寻找,最终选择了基于 Go 的 hugo, 记录一下迁移过程及待办事项。

Hugo 准备

概念

Hugo is a fast and modern static site generator written in Go, and designed to make website creation fun again.

那 hugo 基于编译语言 GO 构建,对于静态页面的构建肯定是碾压 hexo 的存在,其官方标语也是很直白 "The world’s fastest framework for building websites", 作为先后使用过 hexo 和 hugo 的我来说,这确实名副其实。

  • gohugo

安装

hugo 提供了很多种安装方式,Git, Docker, Binary. 个人电脑使用二进制安装是最方便快捷的,无需安装其他依赖。 到 Hugo Releases 下载对应的 windows 操作系统版本的 Hugo 二进制文件,玩就要玩全的,所以我就选择了扩展版本,此次选择的最新版为 hugo_extended_0.88.1_Windows-64bit.zip, 然后自行解压安装即可。

生成站点

使用 Hugo 快速生成站点,比如希望生成到 /path/to/site 路径:

1

hugo new site /path/to/site

站点目录结构:

代码语言:javascript复制
▸ archetypes/    # 配置文章模板,相当于 hexo 的 scaffolds
▸ content/       # 文章页面内容,相当于 hexo 的 source
▸ data/          # 可存放一些 yaml, json, toml 格式的数据
▸ layouts/       # 页面布局源码,改造主题可不动主题源码
▸ static/        # 静态文件存放
  config.toml    # 站点配置文件,相当于 hexo 的 _config.yml

创建文章

注: 路径要写以 content/ 为根目录的相对路径

1

hugo new path/fileName

添加主题

添加主题的方式选用 Git 子模组的形式,为了日后快速升级,避免在使用 hexo 中因大量魔改 next 主题而导致难以升级的困扰。 精挑细选最终选择了 LoveIt => FixIt

1 2

git init git submodule add https://github.com/Lruihao/FixIt.git themes/FixIt

config.toml 添加 theme = “LoveIt”

1

theme = "FixIt"

在本地启动网站

使用以下命令启动网站:

1

hugo serve --disableFastRender

去查看 http://localhost:1313

hugo build

使用以下命令生成静态文件,然后自己可手动选择部署到 github pages 或 COS 等服务器

1

hugo --minify

写作指北

  • FixIt 主题文档 - 基本概念
  • FixIt 主题文档 - 内容
  • FixIt 主题文档 - 内置 Shortcodes
  • FixIt 主题文档 - 扩展 Shortcodes

Todo list

本站源码备份https://github.com/Lruihao/hugo-blog

原来 hexo 做了大量的美化和扩展功能,迁移到 hugo 想尽可能多的保留。取之精华,去其糟粕。

Base

  • 迁移 hexo 所有文章内容
  • 迁移 hexo 所有页面内容
    • 留言页面
    • 网友打赏支持页面,整合到留言页面
    • 重写关于页面,一切从简
    • 友情链接页面
    • 重写 404 页面
    • 站点时间和不蒜子计数改到 hello-world 页面
  • cos-album

    0 人点赞