hexo系列-next主题配置与优化
前言–几句废话
Hexo Next 是一个基于 Hexo 的博客主题,以其简洁、美观和高度可定制性而受到广大用户的喜爱。前面介绍了 Hexo 博客的搭建,搭建好了当然要让页面变的更好看一些,本文介绍一个 hexo 的主题配置 Next,简介而又功能强大的主题。
美化 Hexo Next 主题可以通过修改配置文件、自定义样式表以及添加插件等方式来实现。
以下是详细的教程:
安装与配置 Hexo Next 主题
安装 Hexo Next 主题:在 Hexo 项目的根目录下执行以下命令以安装 Next 主题:
1
git clone https://github.com/theme-next/hexo-theme-next themes/next
启用 Next 主题:打开
_config.yml
文件,将theme
项设置为next
:1
theme: next
基础配置:根据需要修改
_config.yml
文件中的基本配置,如站点标题、描述、语言、时区等。例如:1
2
3
4
5
6title: My Blog
subtitle: My Personal Blog
description: This is my personal blog.
author: Your Name
language: en
timezone: ''
更改主题风格(Scheme)
Next 主题提供了多种风格(Scheme),可以在 themes/next/_config.yml
文件中选择自己喜欢的风格。找到 scheme
选项并取消注释,然后选择一个风格:
1 | scheme: Muse |
保存更改后,重新生成静态文件并启动服务器:
1 | hexo clean && hexo generate && hexo server |
菜单设置
设置菜单项:在
themes/next/_config.yml
文件中,可以设置菜单项的名称、链接和图标。例如:1
2
3
4
5
6
7menu:
home: / || fa fa-home # 主页
about: /about/ || fa fa-user # 关于
tags: /tags/ || fa fa-tags # 标签
categories: /categories/ || fa fa-th # 分类
archives: /archives/ || fa fa-archive # 归档
commonweal: /404/ || fa fa-heartbeat # 公益 404显示文本:菜单项的名称并不直接用于界面上的展示,而是通过语言翻译来提取显示文本。这些翻译文本放置在
themes/next/languages/{language}.yml
文件中。例如,对于简体中文,可以打开zh-CN.yml
文件,找到对应的菜单项并设置显示文本:1
2
3
4
5
6
7
8
9
10menu:
home: 首页
archives: 归档
categories: 分类
tags: 标签
about: 关于
search: 搜索
schedule: 日程表
sitemap: 站点地图
commonweal: 公益 404显示图标:在
menu_settings
中将icons
设置为true
即可显示图标:1
2
3menu_settings:
icons: true
badges: false
分类页面设置
创建分类页面:在终端中定位到 Hexo 站点目录下,使用以下命令新建一个分类页面:
1
hexo new page categories
然后在
source
文件夹下会生成categories
文件夹,其中有一个index.md
文件,修改其内容如下:1
2
3
4
5---
title: 分类
date: 2022-03-13 13:18:47
type: "categories"
---多级分类显示:如果需要实现多级分类且显示界面层次感强,可以修改
themes/next/source/css/_common/components/pages/categories.styl
文件,添加以下 CSS:1
2
3
4
5
6
7
8
9
10
11
12.category-list-item {
margin: 5px 10px;
&::before {
content: "📍 ";
display: inline;
}
}
.category-list-child {
padding-left: 60px;
}
自定义样式与功能
自定义样式:可以通过主题注入功能自定义样式。首先,在
themes/next/_config.yml
中找到custom_file_path
并取消注释,开启主题注入功能:1
2custom_file_path:
style: source/_data/styles.styl然后在
source/_data/styles.styl
文件中添加自定义的样式。例如,设置背景图片:1
2
3
4
5
6
7body {
background: url(/images/background.png); //自己喜欢的图片地址
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;
background-position: 50% 50%;
}回到顶部按钮:在
themes/next/_config.yml
中找到back2top
选项,并将其设置为true
:1
2
3
4back2top:
enable: true
sidebar: false
scrollpercent: false还可以自定义回到顶部按钮的样式和位置。
侧边栏设置:在
themes/next/_config.yml
中找到sidebar
选项,可以设置侧边栏的位置、宽度、显示方式等。例如:1
2
3
4
5sidebar:
position: left # Sidebar Position. (left | right)
display: post # Display (only for Muse | Mist), available values: post, always, hide, remove.
padding: 18 # Sidebar padding in pixels.
offset: 12 # Sidebar offset from top menubar in pixels (only for Pisces | Gemini).网站图标:在
themes/next/_config.yml
中找到favicon
选项,设置网站的图标路径:1
2
3
4
5favicon:
small: /images/16x16-paimeng.png
medium: /images/32x32-paimeng.png
apple_touch_icon: /images/apple-touch-icon-next.png
safari_pinned_tab: /images/logo.svg
其他美化技巧
鼠标移动特效:在
themes/next/source/js
中新建fairyDustCursor.js
文件,并添加鼠标移动特效的代码。然后在themes/next/layout/_macro/script.stp
中引入该文件。代码高亮:确保在
_config.yml
中启用了代码高亮,并在highlight
选项中设置相关参数。例如:1
2
3
4highlight:
enable: true #是否开启代码高亮
line_number: true #是否增加代码行号
auto_detect: true #自动判断代码语言评论系统:可以使用第三方评论系统,如 Disqus、Valine 等,根据文档进行配置。例如,使用 Valine:
1
npm install hexo-comment --save
然后在
_config.yml
中添加 Valine 的配置。不过 Valine 似乎不在新的 Next 主题中不再支持了。想要评论系统的小伙伴可以看一下我的另一篇介绍 hexo + waline 配置评论系统的文章:hexo系列-使用waline配置评论系统 | 小七爱折腾,效果很好。
结束
通过以上步骤,您可以对 Hexo Next 主题进行个性化的美化和配置,使其更符合您的需求和审美。记得每次修改配置后,运行以下命令重新生成静态文件并启动服务器,以查看效果:
1 | hexo clean && hexo generate && hexo server |