Hexo配置NexT主题

安装 NexT主题

支持通过以下两种方式安装NexT 主题

  • 通过git下载主题至themes目录下
  • 通过npm安装(Hexo5.0以上版本支持,简单高效)

可通过hexo -v命令查询Hexo版本信息。

本篇使用npm的安装方式。

安装

注:<hexo-site>为hexo的安装目录,操作是替换为你自己的安装目录即可

执行以下命令

1
2
$ cd <hexo-site>
$ npm install hexo-theme-next

Ps:采用npm安装,主题默认会被安装到/node_modules目录下。如/Blog/node_modules/hexo-theme-next

安装完成后,打开Hexo配置文件,将主题配置为next。

1
theme: next

Ps:在Hexo中有两份主要的配置文件,其名称都是 _config.yml。 其中,一份位于站点根目录下,主要包含 Hexo 本身的配置;另一份位于主题目录下,这份配置由主题作者提供,主要用于配置主题相关的选项。

配置

不建议直接修改NexT主题中的任何文件。因为这可能会导致错误(例如合并冲突),并且在升级主题时可能会丢弃修改后的文件。

推荐采用以下方式进行配置:

1
2
3
4
# 通过 npm 安装
cp node_modules/hexo-theme-next/_config.yml _config.next.yml
# 通过 Git 安装
cp theme/next/_config.yml _config.next.yml

将主题配置文件复制到站点目录下,所有配置修改都可在站点目录下操作。

主题选定

以下内容引用自开始使用NexT

选择Scheme

Scheme 是 NexT 提供的一种特性,借助于 Scheme,NexT 为你提供多种不同的外观。同时,几乎所有的配置都可以 在 Scheme 之间共用。目前 NexT 支持三种 Scheme,他们是:

  • Muse - 默认 Scheme,这是 NexT 最初的版本,黑白主调,大量留白
  • Mist - Muse 的紧凑版本,整洁有序的单栏外观
  • Pisces - 双栏 Scheme,小家碧玉似的清新

Scheme 的切换通过更改 主题配置文件,搜索 scheme 关键字。 你会看到有三行 scheme 的配置,将你需用启用的 scheme 前面注释 # 去除即可。

选择 Pisces Scheme

1
2
3
#scheme: Muse
#scheme: Mist
scheme: Pisces

设置语言

编辑 站点配置文件, 将 language 设置成你所需要的语言。建议明确设置你所需要的语言,例如选用简体中文,配置如下:

1
language: zh-Hans

目前 NexT 支持的语言如以下表格所示:

语言 代码 设定示例
English en language: en
简体中文 zh-Hans language: zh-Hans
Français fr-FR language: fr-FR
Português pt language: pt or language: pt-BR
繁體中文 zh-hk 或者 zh-tw language: zh-hk
Русский язык ru language: ru
Deutsch de language: de
日本語 ja language: ja
Indonesian id language: id
Korean ko language: ko

设置菜单

菜单配置包括三个部分,第一是菜单项(名称和链接),第二是菜单项的显示文本,第三是菜单项对应的图标。 NexT 使用的是 Font Awesome 提供的图标, Font Awesome 提供了 600+ 的图标,可以满足绝大的多数的场景,同时无须担心在 Retina 屏幕下 图标模糊的问题。

编辑 主题配置文件,修改以下内容:

  1. 设定菜单内容,对应的字段是 menu。 菜单内容的设置格式是:item name: link。其中 item name 是一个名称,这个名称并不直接显示在页面上,她将用于匹配图标以及翻译。

    菜单示例配置

    1
    2
    3
    4
    5
    6
    7
    menu:
    home: /
    archives: /archives
    #about: /about
    #categories: /categories
    tags: /tags
    #commonweal: /404.html

    若你的站点运行在子目录中,请将链接前缀的 / 去掉

    NexT 默认的菜单项有(标注 的项表示需要手动创建这个页面):

    键值 设定值 显示文本(简体中文)
    home home: / 主页
    archives archives: /archives 归档页
    categories categories: /categories 分类页
    tags tags: /tags 标签页
    about about: /about 关于页面
    commonweal commonweal: /404.html 公益 404
  2. 设置菜单项的显示文本。在第一步中设置的菜单的名称并不直接用于界面上的展示。Hexo 在生成的时候将使用 这个名称查找对应的语言翻译,并提取显示文本。这些翻译文本放置在 NexT 主题目录下的 languages/{language}.yml{language} 为你所使用的语言)。

    以简体中文为例,若你需要添加一个菜单项,比如 something。那么就需要修改简体中文对应的翻译文件 languages/zh-Hans.yml,在 menu 字段下添加一项:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    menu:
    home: 首页
    archives: 归档
    categories: 分类
    tags: 标签
    about: 关于
    search: 搜索
    commonweal: 公益404
    something: 有料
  3. 设定菜单项的图标,对应的字段是 menu_icons。 此设定格式是 item name: icon name,其中 item name 与上一步所配置的菜单名字对应,icon name 是 Font Awesome 图标的 名字。而 enable 可用于控制是否显示图标,你可以设置成 false 来去掉图标。

    菜单图标配置示例

    1
    2
    3
    4
    5
    6
    7
    8
    9
    menu_icons:
    enable: true
    # Icon Mapping.
    home: home
    about: user
    categories: th
    tags: tags
    archives: archive
    commonweal: heartbeat

    在菜单图标开启的情况下,如果菜单项与菜单未匹配(没有设置或者无效的 Font Awesome 图标名字) 的情况下,NexT 将会使用 作为图标。

    请注意键值(如 home)的大小写要严格匹配

设置侧栏

默认情况下,侧栏仅在文章页面(拥有目录列表)时才显示,并放置于右侧位置。 可以通过修改 主题配置文件 中的 sidebar 字段来控制侧栏的行为。侧栏的设置包括两个部分,其一是侧栏的位置, 其二是侧栏显示的时机。

  1. 设置侧栏的位置,修改 sidebar.position 的值,支持的选项有:

    • left - 靠左放置
    • right - 靠右放置

    目前仅 Pisces Scheme 支持 position 配置。影响版本5.0.0及更低版本。

    1
    2
    sidebar:
    position: left
  2. 设置侧栏显示的时机,修改 sidebar.display 的值,支持的选项有:

    • post - 默认行为,在文章页面(拥有目录列表)时显示
    • always - 在所有页面中都显示
    • hide - 在所有页面中都隐藏(可以手动展开)
    • remove - 完全移除
    1
    2
    sidebar:
    display: post

    已知侧栏在 use motion: false 的情况下不会展示。 影响版本5.0.0及更低版本。

设置头像

编辑 主题配置文件, 修改字段 avatar, 值设置成头像的链接地址。其中,头像的链接地址可以是:

地址
完整的互联网 URI http://example.com/avatar.png
站点内的地址 将头像放置主题目录下的 source/uploads/ (新建 uploads 目录若不存在) 配置为:avatar: /uploads/avatar.png或者 放置在 source/images/ 目录下 配置为:avatar: /images/avatar.png

头像设置示例

1
avatar: http://example.com/avatar.png

设置作者昵称

编辑 站点配置文件, 设置 author 为你的昵称。

站点描述

编辑 站点配置文件, 设置 description 字段为你的站点描述。站点描述可以是你喜欢的一句签名:)

问题列表

分类和标签空白页

问题描述

点击侧边栏关于、标签、分类均跳转到空白页。

解决方案

生成相关页面

使用一下命令生成相关页面

1
2
3
4
5
6
# 生成标签页面
hexo new page tags
# 生成关于页面
hexo new page about
# 生成分类页面
hexo new page categories

生成页面后可正常跳转至新页面,但页面内容依然为空。

配置页面

该部分参考日常记录(三)更换Hexo主题

参考资料

Hexo官方主题列表

开始使用NexT

hexo-theme-next

NexT参考配置

NexT官方文档