<!-- 雪花特效实现 --> <scripttype="text/javascript"> var windowWidth = $(window).width(); if (windowWidth > 480) { document.write('<script type="text/javascript" src="/js/snow1.js"><\/script>'); } </script>
2.3 樱花飘落特效
该特效的实现过程与上边的雪花特效类似,我比较喜欢这一个,所以后来换成了这个。
2.3.1 特效实现脚本
由于所用的代码源码名称为sakura所以所有的特效文件名称也按这个名字来。
1 2 3 4 5 6
# 进入相应的文件夹 cd ~/02MyBlog/hexofiles/themes/next/source/js/ # 新建js文件 vim sakura.js # 后续修改可以使用以下命令 vim ~/02MyBlog/hexofiles/themes/next/source/js/sakura.js
设定菜单内容对应的字段是 menu。菜单内容的设置格式是:item name: link。其中 item name 是一个名称,这个名称并不直接显示在页面上,它用于匹配图标以及翻译。
1 2
# 编辑相应主题配置文件 vim ~/02MyBlog/hexofiles/themes/next/_config.yml
文件如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
# ------------------------------------------------------ # Menu Settings # ------------------------------------------------------
# Usage: `Key: /link/ || icon` # Key is the name of menu item. If the translation for t # Value before `||` delimiter is the target link, value # When running the site in a subdirectory (e.g. yoursite # External url should start with http:// or https:// menu: home:/||fafa-home #about: /about/ || fa fa-user #tags: /tags/ || fa fa-tags #categories: /categories/ || fa fa-th archives:/archives/||fafa-archive #schedule: /schedule/ || fa fa-calendar #sitemap: /sitemap.xml || fa fa-sitemap #commonweal: /404/ || fa fa-heartbeat
以下列出几项作为说明
键值
设定值
显示文本(简体中文)
home
home: /
主页
archives
archives: /archives
归档页
categories
categories: /categories
分类页
tags
tags: /tags
标签页
about
about: /about
关于页面
commonweal
commonweal: /404.html
公益 404
以简体中文为例,若需要添加一个菜单项,比如 search。那么就需要修改简体中文对应的翻译文件 languages/zh-CN.yml,在 menu 字段下添加一项
# Sidebar Avatar avatar: # Replace the default image and set the url here. url:#/images/avatar.gif # If true, the avatar will be dispalyed in circle. rounded:true # If true, the avatar will be rotated with the cursor. rotated:true
用该图片作为头像
3.3 Menu增加关于、标签、分类页面
3.3.1 新建相关的页面
1 2 3
hexo new page "about" hexo new page "tags" hexo new page "categories"
(node:10806) Warning: Accessing non-existent property 'lineno' of module exports inside circular dependency (Use `node --trace-warnings ...` to show where the warning was created) (node:10806) Warning: Accessing non-existent property 'column' of module exports inside circular dependency (node:10806) Warning: Accessing non-existent property 'filename' of module exports inside circular dependency (node:10806) Warning: Accessing non-existent property 'lineno' of module exports inside circular dependency (node:10806) Warning: Accessing non-existent property 'column' of module exports inside circular dependency (node:10806) Warning: Accessing non-existent property 'filename' of module exports inside circular dependency
3.5 文章目录
我这边自己写文章的时候已经写了编号,所以需要关闭显示的时候的自动编号。
1
vim ~/02MyBlog/hexofiles/themes/next/_config.yml
修改主题配置文件如下:
1 2 3 4 5 6 7 8 9 10 11 12
# Table of Contents in the Sidebar # Front-matter variable (unsupport wrap expand_all). toc: enable:true # Automatically add list number to toc. number:false # If tr false [ID] ll placed on next lines if head wrap:false # If true, all level of TOC in a post will be displaye expand_all:false # Maximum heading depth of generated toc. max_depth:6
3.6 代码高亮主题
需要先将站点配置文件高亮代码设置打开,后边会说到,再编辑主题配置文件。
1
vim ~/02MyBlog/hexofiles/themes/next/_config.yml
选择相应的高亮的主题
1 2 3 4
# Code Highlight theme # Available values: normal | night | night eighties | # See: https://github.com/chriskempson/tomorrow-theme highlight_theme:night
3.7 代码块复制
在NexT7.x及以上的版本中直接开启复制功能即可。
1
vim ~/02MyBlog/hexofiles/themes/next/_config.yml
将以下设置为true,并选择代码块的风格。
1 2 3 4 5 6
copy_button: enable:true # Show text copy result. show_result:true # Available values: default | flat | mac style:mac
3.8 侧边栏显示阅读进度
打开scrollpercent即可
1 2
# 打开主题配置文件 vim ~/02MyBlog/hexofiles/themes/next/_config.yml
修改部分如下:
1 2
# Scroll percent label in b2t button. scrollpercent:true
# 进入目标文件夹 cd ~/02MyBlog/hexofiles/themes/next/layout/_macro/ # 新建mycopyright.swig,名字随意,下边对应就好 vim my-copyright.swig # 后续可以用以下命令直接修改该文件 vim ~/02MyBlog/hexofiles/themes/next/layout/_macro/my-copyright.swig
# 进入目标文件夹 cd ~/02MyBlog/hexofiles/themes/next/source/css/_common/components/post/ # 新建my-post-copyright.styl,名字随意,下边对应就好 vim my-post-copyright.styl # 后续可以用以下命令直接修改该文件 vim ~/02MyBlog/hexofiles/themes/next/source/css/_common/components/post/my-post-copyright.styl
<!--添加版权信息--> <div> {% if not is_index %} {% include 'my-copyright.swig' %} {% endif %} </div>
(4)引用样式文件
1 2
# 打开引用文件 vim ~/02MyBlog/hexofiles/themes/next/source/css/_common/components/post/post.styl
在结尾添加以下代码:
1
@import"my-post-copyright"
(5)设置新建文章自动显示版权声明
1 2
# 打开相应文件 vim ~/02MyBlog/hexofiles/scaffolds/post.md
修改如下:
1 2 3 4 5 6
--- title: {{ title }} date: {{ date }} tags: copyright: true #新增copyright ---
(5)最终效果如下
4.2 添加结束标记
新建一个结束标记实现文件
1 2 3 4 5 6
# 进入目标文件夹 cd ~/02MyBlog/hexofiles/themes/next/layout/_macro/ # 新建实现文件 vim passage-end-tag.swig # 后续可以用以下命令直接修改该文件 vim ~/02MyBlog/hexofiles/themes/next/layout/_macro/passage-end-tag.swig
在文件中添加以下内容:
1 2 3 4 5
<div> {% if not is_index %} <divstyle="text-align:center;color: #ccc;font-size:14px;">--------------------------本文结束<iclass="fa fa-heart"></i>感谢您的阅读--------------------------</div> {% endif %} </div>
引用
1 2
# 打开引用文件 vim ~/02MyBlog/hexofiles/themes/next/layout/_macro/post.swig
# Local Search # Dependencies: https://github.com/theme-next/hexo-gener local_search: enable:true # If au true [ID] ch by changing input. # If manual, trigger search by pressing enter key or s trigger:auto # Show top n results per article, show all results by top_n_per_article:1 # Unescape html strings to the readable one. unescape:false # Preload the search data when the page loads. preload:false
# Subscribe through Telegram Channel, Twitter, etc. # Usage: `Key: permalink || icon` (Font Awesome) follow_me: #Twitter: https://twitter.com/username || fab fa-twit ter #Telegram: https://t.me/channel_name || fab fa-telegr am #WeChat: /images/wechat_channel.jpg || fab fa-weixin RSS:/atom.xml||fafa-rss
# URL ## If your site is put in a subdirectory, set url as 'ht tp://example.com/child' and root as '/child/' url:http://example.com root:/ #permalink: :year/:month/:day/:title/ permalink:post/:abbrlink.html abbrlink: alg:crc32# 算法:crc16(default) and crc32 rep:hex# 进制:dec(default) and hex permalink_defaults: pretty_urls: trailing_index:true# Set to false to remove trailing trailing_html:true# Set to false to remove trailing