Hexo+Next主题的一些实用插件和美化升级

article/2025/11/11 5:16:05

Hexo+Next主题的一些实用插件和美化升级

  • 添加右上角图标folk github
  • 添加站内搜索
  • 主页显示项目
  • moon-cake 进度显示和上下滑动
  • 代码颜色
  • 首页只显示文章摘要
  • NexT8动画背景Canvas Nest
  • 修改链接样式
  • LaTeX公式编辑问题
  • 使用mermaid绘制流程图
    • mermaid的flowchart基础语法
  • 访客统计
  • 文章目录默认展开
  • 网站运行天数
  • 网页底部去掉“强力驱动”
  • 友情链接的设置
  • 社交链接添加图标
    • 添加社交连接
    • 添加图标
  • 头像设置
  • 致谢

添加右上角图标folk github

  1. 找到自己喜欢的样式:http://tholman.com/github-corners/, 并复制代码

  2. 打开: E:\Blog\themes\next\layout\_layout.njk,添加

<div class="headband"></div>
<!--下面一行插入复制代码,注意换成自己的github地址:href="https://a171232886.github.io/"-->

添加站内搜索

一个实用的NexT指导网站

  1. 安装
npm install hexo-generator-searchdb --save
  1. 编辑E:\Blog\ _config.yml,任意位置新增
search:path: search.xmlfield: postformat: htmllimit: 10000
  1. 编辑E:\Blog\themes\next\_config.yml,修改
# Local search
local_search:enable: true

主页显示项目

  1. 编辑E:\Blog\themes\next\_config.yml,修改
menu:home: / || fa fa-home#tags: /tags/ || fa fa-tagscategories: /categories/ || fa fa-tharchives: /archives/ || fa fa-archiveabout: /about/ || fa fa-user#schedule: /schedule/ || fa fa-calendar#sitemap: /sitemap.xml || fa fa-sitemap#commonweal: /404/ || fa fa-heartbeat
  1. 新建相应文件,比如categories
hexo new page categories
  1. 修改categories\index.md
---
title: 分类
date: 2021-11-08 20:06:58
type: 'categories'
---

moon-cake 进度显示和上下滑动

  1. 下载,官方链接
npm install hexo-cake-moon-menu
  1. 编辑E:\Blog\themes\next\_config.yml,添加
moon_menu:back2top:enable: trueicon: fas fa-chevron-uporder: -1back2bottom:enable: trueicon: fas fa-chevron-downorder: -2

代码颜色

官方的代码颜色的可用方案

包括了种类,预览效果和使用方式。

  1. 首先修改 Hexo的 _config.yml
  2. 再修改 NexT的 _config.yml
  3. 执行hexo clean,再hexo g

首页只显示文章摘要

以前那种每页显示固定字数的选项没了,现在手动设置:

  1. 整体设置 NexT的 _config.yml
    excerpt_description: true设为true
  2. 在每个文章中插入<!--more-->,然后首页只显示该行以上的部分。

NexT8动画背景Canvas Nest

添加图片作为背景,但找不到合适的图片。NexT8自带的Canvas ribbon,每次点击背景变化过大,不太好。找来找去,就Nest挺合适,但NexT8已经不在集成Nest效果。

这部分完全转载自blog - hexo NexT主题下配置和美化,实测有效。

  1. 首先在hexo目录下安装动画库:
cd themes/next
git clone https://github.com/theme-next/theme-next-canvas-nest source/lib/canvas-nest
  1. 在next主题下的_config.yml找到canvas_ribbon,在下面添加Canvas-nest动画的配置
# Canvas-nest
# Dependencies: https://github.com/theme-next/theme-next-canvas-nest
canvas_nest:enable: trueonmobile: true # display on mobile or notcolor: "0,0,255" # RGB values, use ',' to separateopacity: 0.5 # the opacity of line: 0~1zIndex: -1 # z-index property of the backgroundcount: 99 # the number of lines
  1. 在博客根目录下的source文件夹,创建_data文件夹
cd source
mkdir _data
  1. 创建footer.swig文件,添加内容
<script color="0,0,255" opacity="0.5" zIndex="-1" count="99" src="https://cdn.jsdelivr.net/npm/canvas-nest.js@1/dist/canvas-nest.js"></script>
  1. 在next主题下的_config.yml找到_config.yml中找到custom_file_path添加一行配置footer: source/_data/footer.swig
# Define custom file paths.
# Create your custom files in site directory `source/_data` and uncomment needed files below.
custom_file_path:#head: source/_data/head.njk#header: source/_data/header.njk#sidebar: source/_data/sidebar.njk#postMeta: source/_data/post-meta.njk#postBodyEnd: source/_data/post-body-end.njk#footer: source/_data/footer.njkfooter: source/_data/footer.swig#bodyEnd: source/_data/body-end.njk#variable: source/_data/variables.styl#mixin: source/_data/mixins.styl#style: source/_data/styles.styl
  1. 重启hexo
hexo clean
hexo g
hexo s

修改链接样式

./themes/next/source/css/_common/components/post/post-body.styl最后添加内容:

.post-body a {color: #428BCA;font-weight: bold;
}

LaTeX公式编辑问题

研究了好久,决定还是使用mathjax,其实KaTeX也挺好的。

  1. 卸载默认的marked,安装新的pandoc
  npm un hexo-renderer-markednpm i hexo-renderer-pandoc
  1. 设置next下的_config.yml,将mathjax启用

     mathjax:enable: true# Available values: none | ams | alltags: none
    
  2. 注意:Hexo下的Mathjax没有那么智能,整体公式写法尽量简单,能少加括号的就少加。否则会出现Mathjax官方可以识别出来,但是Hexo编译不出来的情况。

  3. mathjax官方demo,可以在上面试试公式

  4. 尽管mathjax遵循LaTeX语法,但有可能还会出现一些不同的地方。这有两个参考:

    • MathJax basic tutorial and quick reference
    • 在Hexo中渲染MathJax数学公式

使用mermaid绘制流程图

npm install --save hexo-filter-mermaid-diagrams

修改NexT的_config.yml

# Mermaid tag
mermaid:enable: true# Available themes: default | dark | forest | neutraltheme:light: defaultdark: dark

mermaid的flowchart基础语法

  ```mermaidflowchart LRsubgraph TOPdirection TBsubgraph B1direction RLi1 -->f1endsubgraph B2direction BTi2 -->f2endendA --> TOP --> BB1 --> B2
  flowchart LRsubgraph TOPdirection TBsubgraph B1direction RLi1 -->f1endsubgraph B2direction BTi2 -->f2endendA --> TOP --> BB1 --> B2

访客统计

next的_config.yml中busuanzi_count的enable设为true即可。

# Show Views / Visitors of the website / page with busuanzi.
# For more information: http://ibruce.info/2015/04/04/busuanzi/
busuanzi_count:enable: truetotal_visitors: truetotal_visitors_icon: fa fa-usertotal_views: truetotal_views_icon: fa fa-eyepost_views: truepost_views_icon: far fa-eye

文章目录默认展开

如果文章内容是多级目录,默认二级目录是合并的。这样给阅读带来不便,可设置为默认展开。
next的_config.yml中toc的expand_all设为true

toc:enable: true# Automatically add list number to toc.number: true# If true, all words will placed on next lines if header width longer then sidebar width.wrap: false# If true, all level of TOC in a post will be displayed, rather than the activated part of it.expand_all: true# Maximum heading depth of generated toc.max_depth: 6

网站运行天数

.\themes\next\layout\_partials\footer.njk最后添加,注意修改var grt= new Date("12/1/2021 00:00:00");中的时间。

<div>
<span id="timeDate">载入天数...</span><span id="times">载入时分秒...</span>
<script>var now = new Date();function createtime() {var grt= new Date("12/1/2021 00:00:00");now.setTime(now.getTime()+250);days = (now - grt ) / 1000 / 60 / 60 / 24; dnum = Math.floor(days);hours = (now - grt ) / 1000 / 60 / 60 - (24 * dnum); hnum = Math.floor(hours);if(String(hnum).length ==1 ){hnum = "0" + hnum;} minutes = (now - grt ) / 1000 /60 - (24 * 60 * dnum) - (60 * hnum);mnum = Math.floor(minutes); if(String(mnum).length ==1 ){mnum = "0" + mnum;}seconds = (now - grt ) / 1000 - (24 * 60 * 60 * dnum) - (60 * 60 * hnum) - (60 * mnum);snum = Math.round(seconds); if(String(snum).length ==1 ){snum = "0" + snum;}document.getElementById("timeDate").innerHTML = "本站已安全运行 "+dnum+" 天 ";document.getElementById("times").innerHTML = hnum + " 小时 " + mnum + " 分 " + snum + " 秒";}
setInterval("createtime()",250);
</script>
</div>

网页底部去掉“强力驱动”

比如想去掉“由 Hexo & NexT.Gemini 强力驱动”,在.\themes\next\layout\_partials\footer.njk中将以下代码注释掉。

{%- if theme.footer.powered %}<div class="powered-by">{%- set next_site = 'https://theme-next.js.org' if theme.scheme === 'Gemini' else 'https://theme-next.js.org/' + theme.scheme | lower + '/' %}{{- __('footer.powered', next_url('https://hexo.io', 'Hexo') + ' & ' + next_url(next_site, 'NexT.' + theme.scheme)) }}</div>
{%- endif %}

但我认为Hexo和NexT应该在我的网页上留有名字,毕竟帮了我很大忙,于是将其放在了友情链接中。

友情链接的设置

next的_config.yml中Blog rolls进行设置

# Blog rolls
links_settings:icon: fa fa-globetitle: 友情链接# Available values: block | inlinelayout: inlinelinks:Hexo: https://hexo.ioNexT: https://theme-next.js.org/

社交链接添加图标

添加社交连接

在next的_config.yml中social中进行设置。

social:GitHub: https://github.com/a171232886 || fab fa-githubCSDN: https://blog.csdn.net/a171232886 || fa fa-book-opensocial_icons:enable: trueicons_only: falsetransition: false

添加图标

添加的图标应该是Font Awesome这里面已经有的图标。找到合适的图标,复制代码在上面||后直接时候即可。注意不要删掉原有的fa或者fab。

头像设置

在next的_config.yml中avatar设置。将头像图片放在./source/images/中,修改url地址。

# Sidebar Avatar
avatar:# Replace the default image and set the url here.url: /images/header.jpg# If true, the avatar will be displayed in circle.rounded: true# If true, the avatar will be rotated with the cursor.rotated: true

致谢

  1. 馨客栈分享
  2. next6、7博客主题美化 2020-04-10
  3. blog - hexo NexT主题下配置和美化
  4. 让 Hexo Next (v8.0.0) 支持 LaTeX 数学公式
  5. Hexo+next主题配置踩的坑
  6. Hexo博客优化之Next主题美化

http://chatgpt.dhexx.cn/article/aM2Rjaos.shtml

相关文章

Hexo博客主题安装及Next主题个性化修改

原文链接https://www.lixint.me/hexo-theme-diy.html 欢迎加入博客搭建交流群&#xff08;QQ群号60429576&#xff09;>点击加入< 写在最前面&#xff1a; 1.在修改时请注意博客配置文件与主题配置文件的区别&#xff1a;博客配置文件是指博客根目录下的_config.yml文件…

Hexo-Next主题优化

添加动态背景添加背景图片侧边栏设置头像设置&#xff08;圆形旋转&#xff09;浏览页面显示当前浏览进度添加顶部加载条Hexo-Next代码复制功能 1. 添加动态背景 动态背景就是我的博客背景中动的那些粒子。 只需修改主题配置文件 /themes/next/_config.yml # Canvas-nest c…

基于Hexo搭建Next主题博客

Next 链接地址&#xff1a;https://github.com/caozongpeng/hexo-theme-next NexT 是一个高质量并且优雅的Hexo 主题。这是精心制作做出来的 hexo 主题。 如果你对此主题非常喜欢&#xff0c;欢迎Star & Fork&#xff0c;非常感谢。 预览界面 首页 底部 相册 文章 搜索…

Next主题添加背景图片

文章目录 操作步骤添加背景图片设置透明边框圆角 hexo 和 Next 的版本如下&#xff1a; hexo: 5.2.0 NexT: 7.8.0 操作步骤 进入 themes\next\source\css 目录中打开 main.styl 文件在末尾添加 css 代码即可 添加背景图片 值得注意的是&#xff0c;在 main.styl 文件末尾写的…

Hexo-Next主题博客个性化配置

Hexo版本&#xff1a;6.2.0、NextT版本&#xff1a;7.8.0 一、主题安装 打开Git Bash&#xff0c;cd到站点根目录&#xff0c;输入 git clone https://github.com/theme-next/hexo-theme-next themes/next打开站点根目录下的_config.yml文件&#xff0c;landscape修改为next …

hexo下next主题的优化

1.站点信息的配置。 修改一些基本的配置&#xff0c;比如站点名、站点描述等等。 # Site title: halisi7 subtitle: 一个专注技术的组织 description: 涉猎的主要编程语言为 c语言、Java、mysql、linux、docker&#xff0c;领域涵盖算法、服务研发和对象存储等。 keywords: c…

Hexo博客-NexT主题自定义主页配置方法

Refrence https://zhuanlan.zhihu.com/p/366761432 问题 在使用Hexo博客框架的Next主题时&#xff0c;默认主页是数篇博客的摘要。想要修改主页&#xff08;也即首页&#xff09;的内容&#xff08;例如给出网站的介绍等&#xff09;&#xff0c;需要进行自定义配置。 步骤 …

Hexo-Next主题搭建个人博客最新配置教程!

个人博客 网页预览&#xff1a;https://benn314.github.io/ Hexo-Next 是一款我很喜欢的主题&#xff0c;布局简约&#xff0c;很适合用于搭配 live-2d 和 网格动画&#xff0c;打造属于自己的个人博客。博客目前部署于 Github Pages 相关Github仓库 https://github.com/Ben…

NexT主题优化

前言 这算是各种文章的集合了&#xff0c;如果你有耐心就看完吧(&#xff34;▽&#xff34;) 如果是明确想要哪一种功能的童鞋&#xff0c;那就直接查找吧( • ̀ω•́ )✧ 本篇文章是在已经搭建好gitpagehexo的博客的前提下&#xff08;不懂怎么搭建的可以参考我的另一篇…

Hexo+next主题美化静态博客

前言 需要在Hexo下配置next主题 Hexo配置next主题教程&#xff1a;点我跳转 更改配置以后使用素质三连&#xff1a;hexo clean && hexo g && hexo s即可本地看到效果。 hexo clean && hexo g && hexo s注&#xff1a;部分参考自互联网&…

Next主题美化

写作目的 网上关于Hexo的主题美化的博客已经很多也很全面了&#xff0c;但是在作者去一一尝试的时候&#xff0c;却发现有很多博客中提供的方法现在已经不支持或者过时了&#xff0c;为了避免大家和作者一样花费大量时间去一一尝试&#xff0c;所以作者考虑再三&#xff0c;决定…

Hexo博客优化之Next主题美化

前言 有了前面几篇博客的介绍,我们就可以很容易的搭建并编辑我们的博客了,不过既然是属于自己的博客网站,自然也就想让其更加美观,更有意思,所以呢我下面介绍一下Hexo博客的主题美化操作。 1. Next主题 Hexo博客支持很多主题风格,其中Next主题是Github上Star最多的主题,…

Django CBV ( 类视图函数 )

Django 类视图函数 写在前面1、先创建一个新的应用2、写一个类视图函数3、post访问试试4、再创建一个类视图函数5、as_view()里面可以传参6、TemplateView6.1、template_name写到路由里6.2、template_name写到视图里 7、ListView8、DetailView8.1、DetailView还可以不指定templ…

详解Django中FBV开发模式与CBV开发模式的区别.

你可能会好奇为什么在这里我们又要介绍CBV开发模式&#xff0c; 在前面的文章中&#xff0c; 我们调用视图函数都是使用 FBV 开发模式&#xff0c; 用的好好的为什么又要换呢&#xff1f; 其实不然&#xff0c;这是一个循序渐进的过程&#xff0c; 就像编程基础 和 框架开发&am…

什么是ccv

ccv是一个以不成熟的openframeworks为基础作的一个开源的软件。注意它并不是一个库。并且她早就不再更新了。现在openframeworks已经很成熟了&#xff0c;openframeworks提供的函数完全可以替代ccv&#xff0c;所以想继续使用ccv的同学们&#xff0c;赶紧回头是岸&#xff0c;使…

Django----FBV 与 CBV 介绍、CBV源码分析

文章目录 一、CBV和FBV二、CBV 源码分析 一个视图函数&#xff08;类&#xff09;&#xff0c;简称视图&#xff0c;是一个简单的Python 函数&#xff08;类&#xff09;&#xff0c;它接受Web请求并且返回Web响应。 响应可以是一张网页的HTML内容&#xff0c;一个重定向&#…

FBV和CBV

一、FBV FBV&#xff08;function base views&#xff09; 就是在视图里使用函数处理请求。 看代码&#xff1a; urls.py from django.conf.urls import url, include # from django.contrib import admin from mytest import viewsurlpatterns [# url(r‘^admin/‘, admin.s…

CBV

一、CBV与FBV #Class Base View(基于类的视图) #Function Base View(基于函数的视图) 二、CBV的用法及源码分析 1、用法 #视图层 # 1 先导入View(继承它) from django.views import View # 写一个类继承它, class Test(View):#request必须传,后面的可传可不传(有可能有名,无名分…

FBV与CBV

FBV与CBV 视图函数并不只是指函数也可以是类。FBV(基于函数的视图) 面向函数式编程。CBV(基于类的视图) 面向对象式编程 问题:基于CBV的视图函数&#xff0c;get请求来就会走类里面get方法,post请求来就会走类里面post方法 为什么??? urls.py中 url(r^login/,views.MyLogin.…

CBV与FBV的区别/CBV源码剖析

FBV与CBV # 针对于视图函数(views.py)&#xff0c;视图函数编写逻辑既可以使用函数(FBV)也可以使用类(CBV)来编写。 区别展示&#xff1a; login.html <h1>GET请求</h1><form action"" method"post" enctype"multipart/form-data"…