主题配置
主题配置
基础配置
静态资源
statics: "/" # 静态文件根目录,可用于 CDN 加速assets: "assets" # 图片资源存放目录css: "css" # css 存放目录 (不建议改动)js: "js" # js 存放目录 (不建议改动)
自定义网站图片
- 不同的文件名称分别代表对应的图片。
avatar.jpg
默认情况下对应主页上的个人头像,可修改favicon.ico
网站图标apple-touch-icon.png
将网页链接添加到主屏幕时的图标failure.ico
网站被隐藏时的网站图标alipay.png
支付宝捐赠付款码wechatpay.png
微信捐赠收款码paypal.png
PayPal 捐赠收款码search.png
搜索下显示的图片
功能模块
此处指示 ShokaX 功能模块是否开启,在不使用的情况下建议关闭对应模块
modules: player: true # 启用音乐播放器 fireworks: true # 启用鼠标点击烟花特效 unlazyHash: false # 启用unlazy hash预览图支持 visibilityListener: true # 启用可见度监听器 tabs: true # 启用选项卡扩展支持,如需开启 summary 功能请一并开启 quiz: true # 启用文章内问题扩展支持 fancybox: true # 启用 fancybox 支持(不建议禁用)
部分配置的解释:
- 如果需要使用 media tag,请开启 player 模块
- 如果不喜欢切换标签页改变标题这个功能,请关闭 visibilityListener
主页配置
homeConfig: gradient: false # 使用CSS渐变作为文章封面 # fixedCover 性能比默认的更好,且开启时将启用LCP优化和预加载 fixedCover: "" # 主页面cover(为空则使用bing随机图片)
当 gradient 启用时,将使用渐变色封面代替_images.yml
,渐变色集不可控制
当 fixedCover 启用时,上方的图片轮播集将被锁定为 fixedCover 配置的图片,_images.yml
不再控制头图
导航栏、社交链接、侧边栏、大标题
导航栏
以下为菜单项的配置格式及参数说明:
menu: home: / || home # 独立导航项 - 首页 submenu: # 下拉菜单组 default: /page/ || user # 默认显示项 link: /page1/ || cloud # 子菜单项1 link2: /page2/ || coffee # 独立导航项 - 链接2
独立导航项
字段结构:"菜单名称": "链接路径 || 图标代号"
-
链接路径
对应 HTML 中<a href>
的值(如/
或/page2/
) -
图标代号
指定显示在文字旁的图标,可用图标见 _iconfont.styl 文件
(示例中home
和coffee
均为图标代号) -
菜单名称
支持国际化键值(如home
可对应多语言配置),未配置时显示字段名称 -
特殊符号
通过双竖线||
分隔链接路径和图标代号
下拉菜单组
配置规则:
菜单组名称: default: 链接路径 || 图标代号 # 默认显示的标题项 子项1: 链接路径 || 图标代号 子项2: 链接路径 || 图标代号
-
default 项
- 显示为下拉菜单的标题(建议链接路径设为
/
避免无效跳转) - 仍需包含完整格式
路径 || 图标
- 显示为下拉菜单的标题(建议链接路径设为
-
子菜单项
配置方式与独立导航项相同,按需添加多个子项
配置示例解析
# 独立导航项:将在导航栏显示「首页」文字+小屋图标,点击跳转至 /home: / || home
# 下拉菜单组:显示为带用户图标的「Page」下拉菜单submenu: default: /page/ || user # 下拉菜单标题 link: /page1/ || cloud # 子项1:云图标+跳转/page1/
# 独立导航项:显示咖啡图标+跳转/page2/link2: /page2/ || coffee
社交链接
social: github: https://github.com/name || github || "#191717" # google: https://plus.google.com/yourname || google # twitter: https://twitter.com/yourname || twitter || "#00aff0" # zhihu: https://www.zhihu.com/people/yourname || zhihu || "#1e88e5" # music: https://music.163.com/#/user/home?id=yourid || cloud-music || "#e60026" # weibo: https://weibo.com/yourname || weibo || "#ea716e" # about: https://about.me/yourname || address-card || "#3b5998" # email: mailto:foo@xxx.com || envelope || "#55acd5" # facebook: https://www.facebook.com/yourname || facebook # stackoverflow: https://stackoverflow.com/ || stack-overflow # youtube: https://youtube.com/yourname || youtube # instagram: https://instagram.com/yourname || instagram # skype: skype:yourname?call|chat || skype # douban: https://www.douban.com/people/yourname/ || douban
启用对应社交链接,只需要解除对应行注释即可。
格式:
social: keyname: link || logo || "color"
keyname
:合法且不重复的 yaml 键;link
:社交网站链接;logo
:社交网站 logo;color
:社交网站 logo 颜色,选填(不填为字体颜色);
侧边栏
sidebar: position: right # left/right分别对应左侧/右侧 avatar: avatar.jpg
大标题
alternate: "foo" #站点大标题,(比 title 高一级,但仅在 index 显示)
页脚设置
底部设置
widgets: random_posts: true # 随机文章 recent_comments: true # 显示最近评论
字数和阅读时间统计
# 页尾全站统计footer: since: 2010 # 开始时间 count: true # 开启# 文章界面统计post: count: true # 开启
预加载、解析地址设置
performance: # 使用 preconnect 预加载的地址 (不建议超过三个) preConnect: - "https://lf9-cdn-tos.bytecdntp.com" # 使用 dns-prefetch 预解析的地址 dnsPrefetch: - "https://cdn.jsdelivr.net" - "https://unpkg.com"
preConnect 和 dnsPrefetch的区别:
preConnect
选项会对链接进行预连接,这会极大加速 CDN 文件/评论系统的加载速度,但使用过多会影响首屏性能。
dnsPrefetch
适用于“不值得使用 pre-connect
”的,此模式仅会优化 DNS 解析,适用于部分非关键站外链接(例如广告和站外视频)。
SEO 优化和访客优化
seo: bing: google: yandex: baidu:
visitor: clarity: false baiduAnalytics: false googleAnalytics: false
SEO 只需要在对应搜索引擎后填入验证码即可(域名验证 -> meta 验证 -> meta 标签的 content)。
visitor 需要填入对应项目的许可码,一般包含在 js 文件/script 标签中。例如,clarity 一般是 js 代码中 function 的第五个参数,百度统计是 ?hm=
后面的代码。
其他设置
夜间模式
darkmode: true # true/false分别对应打开/关闭夜间模式
默认情况下,是否开启夜间模式取决于(优先级从高到低):
- 访客点击头部自行选择
- 浏览器设置主题色调
- darkmode 配置
自动定位
auto_scroll: false
网站标题自定义
详细步骤:
- 进入 Hexo 的根目录下
source
文件夹中 - 进入
_data
目录(如果没有则创建) - 在下面创建文件
languages.yml
- 修改网站标题在不同语言情况下 favicon show 时,和隐藏呈现的文字
# languagezh-CN: # items favicon: show: 不负韶华 hide: 以梦为马!
zh-HK: favicon: show: 不负韶华 hide: 以梦为马!
zh-TW: favicon: show: 不负韶华 hide: 以梦为马!
en: favicon: show: 不负韶华 hide: 以梦为马!
ja: favicon: show: 不负韶华 hide: 以梦为马!
- 保存文件即可。
图片自定义
自定义网站轮播图
- 在上面的
_data
目录下创建images.yml
; - 在文件内存入轮播图图片即可替换原本自带的轮播图;
- 类似如下,可存入图床当中。
- https://i.imgtg.com/2023/03/09/YS2LU.jpg- https://i.imgtg.com/2023/03/09/YSj7p.jpg- https://i.imgtg.com/2023/03/09/YS6XY.jpg- https://i.imgtg.com/2023/03/09/YSIlc.jpg- https://i.imgtg.com/2023/03/09/YQSYM.jpg- https://i.imgtg.com/2023/03/09/Y0xvg.jpg- https://i.imgtg.com/2023/03/09/Y0iNK.jpg- https://i.imgtg.com/2023/03/09/Y0zdB.jpg- https://i.imgtg.com/2023/03/09/Y0kTl.jpg- https://i.imgtg.com/2023/03/09/Y0hOs.jpg
自0.3.7版本开始,ShokaX 允许主页和文章使用不同的图片源:
以下文件中以_
开头的为主题文件夹下,其他均为source/_data
目录下:
images_index.yml
为首页图片源文件,如果主题文件夹下存在_images_index.yml
,则会使用主题文件夹下的文件,否则使用source/_data/images_index.yml
images.yml
为通用图片源文件,作为首页的后备图片源和文章的图片源。如果未找到images.yml
,则会使用主题文件夹下的_images.yml
首页精选与分类翻转块
1、修改站点配置,在 Hexo 根目录 /_config.yml
中找到 category_map
,配置每个分类对应的英文映射。
category_map: 计算机科学: computer-science C++: cpp 郑莉老师C++语言程序设计: course-1 Linux: Linux
2、设置文章所属的目录
/source/_posts
为上传文章的保存目录。
categories
的设置要根据上面的 category_map
以及文件顺序顺序书写。例如,某文件位于 计算机科学/C++/郑莉老师C++语言程序设计
目录下,根据上面的映射,在存储文件的 _posts
文件路径下就位于 /source/_posts
下 /computer-science/cpp/course-1
目录下。
categories: - [计算机科学, C++, 郑莉老师C++语言程序设计]
3、在最底部的文件目录放置 cover.jpg
文件,此图片将作为首页精选的图片。自此 文章精选
和 鼠标悬浮翻转
也将实现。
津公网安备 12011402001353 号