本项目基于 Hexo 主题 Solitude 进行二次开发与定制,原始主题归属与开源地址见:https://github.com/everfu/hexo-theme-solitude,当前项目仅用于个人博客。
- 修复首页 Mini(简讯)模块在部分情况下报错“Swiper is not defined”的问题:
- 调整初始化时机,只有在 Swiper 已成功加载后才调用初始化逻辑,避免资源加载顺序导致的报错。
- 相关调整位于主题的注入模板中(js-pjax 脚本区),对
sco.initbbtalk()的调用增加了对window.Swiper的判断与延迟执行。
- 第三方统计按域名按需加载:
- 在
_config.solitude.yml通过自定义脚本注入 51LA 统计,限定仅在生产域名(如www.laogou717.com)下加载,避免本地开发报错或污染统计数据。 - 使用者可根据自身域名与统计 ID 替换对应配置。
- 在
- 站点基础内容完善:
- 隐私政策页:
source/privacy/index.md已提供示例内容可直接使用或修改。 - robots 与 sitemap:提供
source/robots.txt并启用hexo-generator-sitemap生成sitemap.xml,方便搜索引擎收录。
- 隐私政策页:
- 兼容性与构建流程:清理 Hexo 缓存并完善本地预览流程,确保主题模板变更能实时反映。
- 站点根目录
source/站点内容(文章、页面、资源)privacy/index.md隐私政策页面robots.txt站点 Robots 配置
themes/solitude/主题目录layout/includes/inject/body.pug主题脚本注入与首页 Mini 初始化时机调整plugins.yml主题外部库配置(包含 Swiper 等)_config.yml主题配置
_config.solitude.yml站点使用主题的覆盖配置(含自定义脚本注入与统计逻辑)package.json构建与开发脚本
-
环境要求
- Node.js(建议使用长期支持版 LTS)
- npm 或 yarn
- Hexo CLI(全局安装可选)
-
安装依赖
npm install
- 本地预览(默认端口 4000,可自行加
-- -p 4001指定端口)
npm run server
- 清理缓存
npm run clean
- 生成静态文件
npm run build
- 部署(如已配置 deployer)
npm run deploy
- Swiper 按需初始化
- 主题模板
themes/solitude/layout/includes/inject/body.pug中对首页 Mini 的初始化逻辑进行了守护:检测到window.Swiper存在后再初始化,如未加载则挂载到window.load事件后执行,保证 DOM 与脚本顺序正确。
- 主题模板
- 51LA 统计按域名加载
- 在
_config.solitude.yml中注入了仅在生产域名生效的脚本,形如:- 判断
location.hostname === '你的生产域名'后才动态插入 51LA SDK,并在onload回调中进行LA.init。
- 判断
- 如需更换:请将域名与 51LA 的
id/ck替换为你的实际值;或删除该段注入脚本以完全关闭。
- 在
- Robots 与 Sitemap
source/robots.txt可直接编辑自定义爬取策略。hexo-generator-sitemap已在package.json中声明,构建时自动生成sitemap.xml。
- 若你在本地开发遇到第三方统计脚本报错,可确认是否使用了“按域名加载”的注入策略,避免在非生产环境加载相关脚本。
- 首页 Mini 模块依赖 Swiper 相关资源,请确保 CDN 或本地资源路径可正常访问。
- 如需进一步自定义外部库(如切换 CDN、版本号),可在
themes/solitude/plugins.yml中修改。
- 原始主题 Solitude 的版权与许可信息以其仓库和许可证为准(详见
themes/solitude/LICENSE)。 - 本项目仅用于个人博客,感谢 Solitude 主题作者与所有相关开源依赖的贡献。
- 本仓库内置(vendored)并二次定制了主题 Solitude,后续不再跟随上游主题更新。
- 功能与样式改动将按需在本仓库自行实现,并通过提交记录进行追踪。
- 保留并尊重原主题的版权与许可,持续在文档中进行致谢与来源标注。
- 上游主题:everfu/hexo-theme-solitude 仓库地址:https://github.com/everfu/hexo-theme-solitude
- 本仓库保留的上游文档(路径):
- themes/solitude/README.md
- themes/solitude/README_en-US.md
- themes/solitude/README_es-ES.md
- themes/solitude/README_zh-Hant.md
- themes/solitude/SECURITY.md
- themes/solitude/LICENSE
- 说明:根级 README 不再合并上游文档的正文,仅在此处提供路径与链接以便参考。