Hexo 主题 Tree

一个简洁的主题,主要功能是 “树状导航” + “树状目录”,可选配“评论”和“阅读量”功能,支持基于搜索引擎的全站搜索。通过 fancybox 支持图片点击放大。

有问题欢迎及时联系,issues、邮件都行

Demo:https://wujun234.github.io/

使用说明

1 下载主题

下载主题到 hexo 根目录中 themes 目录下

git clone https://github.com/wujun234/hexo-theme-tree.git  themes/tree

修改 hexo 根目录的 _config.yml

theme: tree

2 配置主题

如果要使用 valine 的评论及阅读量功能,需要在 themes/tree 路径下的 _config.yml 文件中,填写自己申请的 leancloud 账户下面的 appID 和 appKey

valine:
appID:
appKey:

若不需使用,则设置

valine:
enableComment: false
enableCounter: false

3 导航栏和图标

  • 导航栏:当前没有配置化,需要修改themes/tree/layout/_partial 路径下的 header.ejs 文件
  • 图标:替换themes/tree/source 路径下的favicon.ico 文件

4 about 页

在 source路径下,与_posts文件夹平行,建立一个about

执行

hexo new page --path about/index "About"

参考:https://hexo.io/zh-cn/docs/commands.html#new

5 文章树、目录树

页面左侧的文章树是根据 source 文件夹里的文章和文件夹生成的

修改主题 tree 目录的 _config.ymlsidebar.usePostTitle可以控制目录树中展示文件名还是文章名

# 左侧导航栏,用文件名还是文章名
sidebar:
# usePostTitle 为 ture 用文章名,不填或为 false 用文件名
usePostTitle: true

6 全站搜索

修改主题 tree 目录的 _config.yml

站点如果【被搜索引擎收录】,可以配置通过搜索引擎全站搜索

7 tags 页

在 source路径下,与_posts文件夹平行,建立一个tags

执行

hexo new page "tags"

编辑 source/tags/index.md

---
title: tags
date: 2021-02-26 16:36:55
type: "tags"
layout: "tags"
---

修改主题 tree 目录的 _config.yml,添加

tags: true

8 categories 页

在 source路径下,与_posts文件夹平行,建立一个categories

执行

hexo new page "categories"

编辑 source/tags/index.md

---
title: categories
date: 2021-02-26 16:36:55
type: "categories"
layout: "categories"
---

修改主题 tree 目录的 _config.yml,添加

categories: true

9 pjax

主题默认支持了 pjax 跳转,但是在网速慢的时候,pjax 因为没有页面刷新的交互,可能会让人误以为点击没响应。

如果要去掉 pjax 特性,注释掉主题 'source/js/main.js' 文件中的 'pjaxLoad()' 方法就好。

$(document).ready(function () {
hljs.initHighlightingOnLoad();
clickTreeDirectory();
serachTree();
// pjaxLoad();
showArticleIndex();
switchTreeOrIndex();
scrollToTop();
pageScroll();
wrapImageWithFancyBox();
});

其他

图片

最开始将图片放在 source 中,使用 github 的相对地址,但是本地 md 编辑器不能识别这样的图片,

后续选择了 picgo,用 github 做图床:https://picgo.github.io/PicGo-Doc/

推荐插件

推荐安装 Markdown-it 插件渲染 Markdown

替换之后注意将 _config.yml 中 hexo 默认的 Markdown 配置改一下

highlight:
enable: false
line_number: false
auto_detect: false
tab_replace: ''

访问管理

我自己用的是百度统计 https://tongji.baidu.com ,很简单,注册后在 'head' 里加一个 '<script>' 块就行了

文章来源:https://github.com/wujun234/hexo-theme-tree

hexo-theme-tree的更多相关文章

  1. hexo部署github和gitment操作简单介绍

    优点: 快速高效 支持markdown 布局自定义简单,无广告 部署简单 因为想开始写博客,但又找不到好的博客平台,平时都看博客园和开源中国看博客文章,但博客园的那个皮肤是真有点难受,所以就想自己打个 ...

  2. 从零开始制作 Hexo 主题

    原文地址:从零开始制作 Hexo 主题 · Ahonn 写在前面 本文将会从零开始开发一个简单的博客主题.样式主要参考 Hexo theme 中的 Noise 主题. 开始之前你需要了解: 模板引擎  ...

  3. hexo博客yili主题个性化自定义教程(1) ——借鉴中学习,初认yili主题

    文章转载于:hexo博客yili主题个性化自定义教程(1) --借鉴中学习,初认yili主题 这个博客跌跌撞撞也弄了好多天了,由于Next主题不知道什么情况,被我玩坏了.所以换了一个主题. 大名鼎鼎的 ...

  4. Github+Hexo一站式部署个人博客(原创)

    写在前面 注:博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 本文源链接:https://www.cnblogs.com/chloneda/p/hexo.ht ...

  5. 玩遍博客网站,我整理了 Hexo 及其流行的风格主题

    搭建博客网站是个人进入互联网世界的最常见方式之一.伴随着网站技术的发展,如何搭建博客网站已经变得非常容易了.当然,你可以选择诸如 新浪博客.CSDN.博客园 之类的大型网站,快速创建依赖于大平台的个人 ...

  6. GitHub + Hexo 搭建个人博客网站

    一.准备工作 1. GitHub + Hexo 的优势 Hexo 提供现成的模板和模块:github 的 pages 功能提供免费的服务器,零成本搭建属于自己的博客. 2. 需要了解的网站 githu ...

  7. GitHub_Hexo_Next 搭建博客

    利用最新版本的 hexo+next 重构了个人博客,下面简单记录了搭建博客的完整过程: 一.环境准备 1.安装 Node.js 2.安装 Git 3.注册 Github 账号 二.在GitHub上创建 ...

  8. DRL强化学习:

    IT博客网 热点推荐 推荐博客 编程语言 数据库 前端 IT博客网 > 域名隐私保护 免费 DRL前沿之:Hierarchical Deep Reinforcement Learning 来源: ...

  9. Xnip Mac上方便好用的截图工具

    Xnip Mac上方便好用的截图工具 标注 Xnip 拥有齐全的标注功能,您可以对截取的图片进行标注,在标注的同时还能重新调整截图大小. 查看标注操作 GIF 滚动截图 Xnip 的滚动截图功能可以让 ...

  10. 我的基于 JamStack 的新博客

    概述 今天心血来潮,介绍一下我的新博客站点 -- https://EWhisper.cn. 我是做基础平台 PaaS 运维和架构的,挺喜欢把工作中学到的新知识写下来.记笔记,突然有一天就抱着「资源共享 ...

随机推荐

  1. SpringBoot+Mybatis-plus整合easyExcel批量导入Excel到数据库+导出Excel

    一.前言 今天小编带大家一起整合一下easyExcel,之所以用这个,是因为easyExcel性能比较好,不会报OOM! 市面上常见的导入导出Excel分为三种: hutool easyExcel p ...

  2. 【深入浅出Spring原理及实战】「源码调试分析」结合DataSourceRegister深入分析ImportBeanDefinitionRegistrar的源码运作流程

    每日一句 人的一生中不可能会一帆风顺,总会遇到一些挫折,当你对生活失去了信心的时候,仔细的看一看.好好回想一下你所遇到的最美好的事情吧,那会让你感觉到生活的美好. 注入案例代码 如何通过实现Sprin ...

  3. A+B Problem C++

    前言继上次发表的A+B Problem C语言后,今天我们来学习一下A+B Problem C++ 正文什么是C++? C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象 ...

  4. Stream流的特点_只能用一次-Stream流中的常用方法_map

    Stream流的特点_只能用一次 Stream流属于管道流,只能被消费(使用)一次 第一个stream流调用完毕方法,数据就会流转到下一个stream上 而这时第一个stream流已经使用完毕,就会关 ...

  5. Lock锁-线程状态概述

    Lock锁 java.util.concurrent.locks.Lock机制提供了比synchronized代码块和synchronized方法更广泛的锁定操作,同步代码块/同步方法具有的功能Loc ...

  6. Linux密钥认证

    网站集群批量管理-秘钥认证 一.概述 管理更加轻松:两个节点,通过秘钥形式进行访问,不需要输入密码,单向 应用场景: 一些服务在使用前要求做秘钥认证 手动写批量管理脚本 名字:秘钥认证,免密码登录,双 ...

  7. Vue12 监视属性

    1 简介 所谓监听就是对内置对象的状态或者属性变化进行监听并且做出反应的响应,监听属性,意思就是可以监视其他数据的变化 2 使用 使用watch配置项,在配置项里面写上要监视的属性,每次属性值的变化都 ...

  8. 学习Java Day22

    今天学习了如何在包中增加类,想要将包放入类中,就必须将包的名字放在源文件的开头,即放在定义这个包中各个类的代码之前

  9. day13-自定义拦截器

    自定义拦截器 1.什么是拦截器 说明: 拦截器与过滤器的区别 SpringMVC 的拦截器(Interceptor)与 Java Servlet 的过滤器(Filter)类似,它主要用于拦截用户的请求 ...

  10. JZOJ 1121. Fix

    解析 考场时想多了,其实根本不用分阶段 一维状压 \(DP\) 就行了 可我没想清楚,加了个第几次去稳固一个点的阶段 然后时间就炸了!!! \(Code\) #include<cstdio> ...