Github + Hexo + hexo-theme-matery
使用Hexo搭建博客,并使用了hexo-theme-matery这个模板
一、Ubuntu18.04环境配置
1.安装node.js
1.1 官网文件安装
采用node.js最新的LTS版本
wget https://nodejs.org/dist/v14.16.1/node-v14.16.1-linux-x64.tar.xz
xz -d node-v14.16.1-linux-x64.tar.xz
tar xvf node-v14.16.1-linux-x64.tar
在环境变量目录中创建执行文件的软连接:
sudo ln -s ~/node-v14.16.1-linux-x64/bin/node /usr/local/bin/node
sudo ln -s ~/usr/local/node-v14.16.1-linux-x64/bin/npm /usr/local/bin/npm
或者
直接将node-v14.16.1-linux-x64路径添加到 /etc/profile 文件
export NODE_HOME=~/node-v14.16.1-linux-x64
export PATH=$NODE_HOME/bin:$PATH
然后
source /etc/profile
1.2 通过nvm安装
建议采用nvm安装node.js
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
不过我的网络不稳定,上面这句执行失败,不知道是不是写的方法不对,我是直接下载的文件,执行
tar zxvf nvm-0.38.0.tar.gz
cd nvm-0.38.0/
./install.sh
执行命令安装node.js
nvm install --lts
检查安装结果
huyf@T450s:~$ nvm -v
0.38.0
huyf@T450s:~$ npm -v
6.14.12
huyf@T450s:~$ node -v
v14.16.1
1.1的安装方法可能更简便一些,1.2的安装方法可以使用nvm管理版本
2.安装Hexo
2.1 npm安装Hexo
npm install hexo-cli -g
npm install hexo-deployer-git --save
2.2 Hexo初始化
sudo hexo init blog
目录结构如下:
huyf@T450s:~/work/blog$ tree -d -L 1
.
├── node_modules
├── public
├── resource
├── scaffolds
├── source
└── themes
7 directories
3. 下载hexo-theme-matery模板
hexo-theme-matery,Github源码
可以直接下载文件,解压到themes文件夹。
也可以直接clone到themes文件夹
git clone https://github.com/blinkfox/hexo-theme-matery.git
4、安装插件
npm install hexo-generator-search --save
npm i hexo-permalink-pinyin --save
npm i --save hexo-wordcount
npm install hexo-generator-feed --save
npm install hexo-filter-github-emojis --save
npm install hexo-abbrlink --save
- 搜索功能;
- 中文链接转拼音;
- 文章字数统计;
- RSS订阅;
- Github emojis表情;
- abbrlink永久唯一链接;
如果之前安装过prismjs,则需要卸载npm uninstall hexo-prism-plugin
5、在Hexo初始化生成的文件夹中新增一些文件
在Hexo根目录下执行
hexo new page "categories"
hexo new page "tags"
hexo new page "about"
hexo new page "contact"
hexo new page "friends"
hexo new page 404
- 新增分类页;
- 新增标签页;
- 新增关于页;
- 新增留言板页;
- 新增友情链接页;
- 新增404页;
会在source目录下生成对应的文件夹及index.md文件
huyf@T450s:~/work/blog/source$ tree -L 2
.
├── 404
│ └── index.md
├── about
│ └── index.md
├── categories
│ └── index.md
├── contact
│ └── index.md
├── _data
│ ├── friends.json
│ └── musics.json
├── friends
│ └── index.md
├── _posts
│ └── hello-word.md
└── tags
└── index.md
8 directories, 10 files
二、修改
1、Hexo根目录配置文件的修改
Hexo根目录下的
_config.yml
1.1 Site 站点信息
# Site
title: #网站标题
subtitle: #网站副标题
description: #网站描述
keywords: #关键字
author: #作者
language: zh-CN #网站语言
timezone: 'Asia/Shanghai' #时区
这里大多是比较个性化的信息,请注意修改。
1.2 URL 网页链接
# URL
## Set your site url here. For example, if you use GitHub Page, set url as 'https://username.github.io/project'
#url: http:://example.com
url: http://doghoo.github.io
# permalink: :year/:month/:day/:title/
#设置永久链接
# permalink: posts/:uuid # 此处可以自己设置,也可以直接使用 :/abbrlink
permalink: posts/:abbrlink.html # 此处可以自己设置,也可以直接使用 :/abbrlink
abbrlink:
auto_category:
enable: true
alg: crc32 #算法: crc16(default) and crc32
rep: hex #进制: dec(default) and hex
#add v7.8.0
permalink_defaults:
pretty_urls:
trailing_index: true # Set to false to remove trailing 'index.html' from permalinks
trailing_html: true # Set to false to remove trailing '.html' from permalinks
不过我的blog做上面设置后,一开始是能正常生成abbrlink,但后面不知道为什么每次生成的链接都变成了undefined,后来采用如下配置方案:
# URL
## Set your site url here. For example, if you use GitHub Page, set url as 'https://username.github.io/project'
#url: http:://example.com
url: http://doghoo.github.io
permalink: posts/:year:month:day:id.html
#设置永久链接
# permalink: posts/:uuid # 此处可以自己设置,也可以直接使用 :/abbrlink
# permalink: posts/:abbrlink.html # 此处可以自己设置,也可以直接使用 :/abbrlink
# # abbrlink config
# abbrlink:
# alg: crc32 #support crc16(default) and crc32
# rep: hex #support dec(default) and hex
# drafts: false #(true)Process draft,(false)Do not process draft. false(default)
# # Generate categories from directory-tree
# # depth: the max_depth of directory-tree you want to generate, should > 0
# auto_category:
# enable: true #true(default)
# depth: #3(default)
# over_write: false
# auto_title: false #enable auto title, it can auto fill the title by path
# auto_date: false #enable auto date, it can auto fill the date by time today
# force: false #enable force mode,in this mode, the plugin will ignore the cache, and calc the abbrlink for every post even it already had abbrlink.
#add v7.8.0
permalink_defaults:
pretty_urls:
trailing_index: true # Set to false to remove trailing 'index.html' from permalinks
trailing_html: true # Set to false to remove trailing '.html' from permalinks
还需要修改scaffolds/post.md
---
title: {{ title }}
id:
date: {{ date }}
author:
img:
coverImg:
top: false
cover: false
toc: true
mathjax: false
password:
summary:
tags:
categories:
---
在markdown文章中添加 id,参见下图:
生成链接格式如图所示
后记:
**后来发现abbrlink是好用的,只是需要使用hexo new xxx创建md文件,执行hexo g
或直接执行hexo s
这个的过程,就会在md文件添加abbrlink字段,参见如下:
**
---
uuid: f684fac0-a950-11eb-b237-af9be55e9fc7
title: Gitee-Imgbed
id: r1
author: doghoo
top: false
cover: false
toc: true
mathjax: false
abbrlink: 3d822528 # 此处是新生成的链接字段
date: 2021-04-30 09:11:16
img:
coverImg:
password:
summary:
tags:
categories:
---
1.3 Directory
保持不变
# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: archives
category_dir: categories
code_dir: downloads/code
i18n_dir: :lang
skip_render:
1.4 Writing
如果不使用prismjs来高亮代码块,所以这里两处需要修改,否则保持默认即可。
# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link:
enable: true # Open external links in new tab
field: site # Apply to the whole site
exclude: ''
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
highlight:
enable: true # 不使用prismjs高亮改成false
line_number: true
auto_detect: false
tab_replace: ''
wrap: true
hljs: false
prismjs:
enable: true # 不使用prismjs高亮改成false
preprocess: true
line_number: true
tab_replace: ''
1.5 Home page setting
# Home page setting
# path: Root path for your blogs index page. (default = '')
# per_page: Posts displayed per page. (0 = disable pagination)
# order_by: Posts order. (Order by date descending by default)
index_generator:
path: ''
per_page: 12 # 因为模板的排版要求每页的文章个书为6的倍数
order_by: -date
1.6 Category & Tag
保持不变
# Category & Tag
default_category: uncategorized
category_map:
tag_map:
1.7 Metadata elements
保持不变
# Metadata elements
## https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta
meta_generator: true
1.8 Date / Time format
保持不变
# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## http://momentjs.com/docs/#/displaying/format/
date_format: YYYY-MM-DD
time_format: HH:mm:ss
## updated_option supports 'mtime', 'date', 'empty'
updated_option: 'mtime'
1.9 Pagination
# Pagination
## Set per_page to 0 to disable pagination
per_page: 12 ##此处保持与1.5中数字相同
pagination_dir: page
1.10 Include / Exclude file(s)
保持不变
# Include / Exclude file(s)
## include:/exclude: options only apply to the 'source/' folder
include:
exclude:
ignore:
1.11 Extensions 模板&插件设置
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
#theme: landscape
theme: hexo-theme-matery #此处的与模板git clone后生成的或解压拷贝过来的文件夹名称一致
1.12 Deployment 部署
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: git
repository: git@github.com:doghoo/doghoo.github.io.git
branch: master
Hexo部署到Github上的必要设置,此外ubuntu还需要配置git,这样hexo d可以直接部署到github上。
如果部署的gitee上,原理相同。
1.13 其他
以下是针对相应的插件新增的配置
# 搜索
search:
path: search.xml
field: post
# 中文链接转拼音
permalink_pinyin:
enable: true
separator: '-' # default: '-'
#文章的字数统计等信息
postInfo:
date: true
update: true
wordCount: true # 设置文章字数统计为 true.
totalCount: true # 设置站点文章总字数统计为 true.
min2read: true # 阅读时长.
readCount: true # 阅读次数.
# github表情
githubEmojis:
enable: true
className: github-emoji
inject: true
styles:
customEmojis:
# 添加 RSS 订阅支持
feed:
type: atom
path: atom.xml
limit: 20
hub:
content:
content_limit: 140
content_limit_delim: ' '
order_by: -date
# 是否在首页显示音乐
music:
enable: true
title: # 非吸底模式有效
enable: true # 可以关闭音乐功能
show: 听听音乐
server: netease # require music platform: netease, tencent, kugou, xiami, baidu
type: playlist # require song, playlist, album, search, artist
id: 503838841 # require song id / playlist id / album id / search keyword
fixed: false # 开启吸底模式
autoplay: false # 是否自动播放
theme: '#42b983'
loop: 'all' # 音频循环播放, 可选值: 'all', 'one', 'none'
order: 'random' # 音频循环顺序, 可选值: 'list', 'random'
preload: 'auto' # 预加载,可选值: 'none', 'metadata', 'auto'
volume: 0.7 # 默认音量,请注意播放器会记忆用户设置,用户手动设置音量后默认音量即失效
listFolded: true # 列表默认折叠
2、matery模板配置文件的修改
matery目录下的
_config.yml
,具体路径:~/work/blog/themes/hexo-theme-matery/
2.1 菜单
# main menu navigation url and icon
# 配置菜单导航的名称、路径和图标icon.
menu:
Index:
url: /
icon: fas fa-home
Tags:
url: /tags
icon: fas fa-tags
Categories:
url: /categories
icon: fas fa-bookmark
Archives:
url: /archives
icon: fas fa-archive
About:
url: /about
icon: fas fa-user-circle
# Contact: #联系方式
# url: /contact
# icon: fas fa-comments
# Friends:
# url: /friends #友情链接
# icon: fas fa-address-book
# 二级菜单写法如下
#Medias:
# icon: fas fa-list
# children:
# - name: Musics
# url: /musics
# icon: fas fa-music
# - name: Movies
# url: /movies
# icon: fas fa-film
# - name: Books
# url: /books
# icon: fas fa-book
# - name: Galleries
# url: /galleries
# icon: fas fa-image
菜单样式如下:
二级菜单默认是关闭的,我这里也没开启。
2.2 站点运行开始时间
默认是关闭的,可以开启,并设置当前时间。
# Website start time.
# 站点运行开始时间.
time:
enable: true
year: 2021 # 年份
month: 04 # 月份
date: 26 # 日期
hour: 00 # 小时
minute: 00 # 分钟
second: 00 # 秒
显示位置及样式如下:
2.3 首页封面轮播图
保持默认
# Index cover carousel configuration.
# 首页封面轮播图的相关配置.
cover:
showPrevNext: true # 是否显示左右切换按钮. Whether to display the left and right toggle buttons.
showIndicators: true # 是否显示指示器. # Whether to display the indicators
autoLoop: true # 是否自动轮播. Whether it is automatically rotated.
duration: 120 # 切换延迟时间. Switching delay time.
intervalTime: 5000 # 自动切换下一张的间隔时间. Automatically switch the interval of the next one.
useConfig: false # 是否使用配置文件, 在 _data/covers.json 下配置推荐文章, false则使用主题在文章中的配置 cover coverImg
# useConfig 使用方式: 将主题 hexo-theme-matery/source/_data/covers.json 移动到 my-blog/source/_data/下修改配置即可
2.4 配置首页显示“梦想”语句
# index page dream text,
# 配置首页显示"梦想"的语句.
dream:
enable: true #觉得没必要,可以关闭。
showTitle: true
title: 关于梦想
text: 做人如果冇梦想,咁同条咸鱼有咩分别呢?
设定后样式如下
2.5 是否在首页显示音乐
# Whether to display the musics.
# 是否在首页显示音乐.
music:
enable: true #觉得没必要,可以掉。
title: #非吸底模式有效
enable: true
show: 听听音乐
autoHide: true # hide automaticaly
server: netease #require music platform: netease, tencent, kugou, xiami, baidu
type: playlist #require song, playlist, album, search, artist
id: 503838841 #require song id / playlist id / album id / search keyword
fixed: true # 开启吸底模式
autoplay: false # 是否自动播放
theme: '#42b983'
loop: 'all' # 音频循环播放, 可选值: 'all', 'one', 'none'
order: 'random' # 音频循环顺序, 可选值: 'list', 'random'
preload: 'auto' # 预加载,可选值: 'none', 'metadata', 'auto'
volume: 0.7 # 默认音量,请注意播放器会记忆用户设置,用户手动设置音量后默认音量即失效
listFolded: true # 列表默认折叠
hideLrc: true # 隐藏歌词
显示位置如下
2.6 是否在首页显示视频
保持默认的关闭状态
# Whether to display the videos.
# 是否在首页显示视频.
video:
enable: false
showTitle: true
title: 精彩视频
url: # url和iframeUrl其中一个必填
iframeUrl: #在bilibili或者爱奇艺分享时选择iframe,然后填那个url来这里,sample: //player.bilibili.com/player.html?aid=669520137&bvid=BV1oa4y1L7mw&cid=234543483&page=1
pic:
thumbnails:
height: # 如:400
autoplay: false # 是否自动播放
theme: '#42b983'
loop: false # 是否循环播放
preload: 'auto' # 预加载,可选值: 'none', 'metadata', 'auto'
volume: 0.7
2.7 是否显示推荐文章的标题
默认关闭
# Whether to display the title of the recommended posts
# 是否显示推荐文章的标题
recommend:
enable: true
showTitle: true
useConfig: false # 是否使用配置文件, 在 _data/recommends.json 下配置推荐文章, false则会走主题配置的 top 属性
# useConfig 使用方式: 将主题 hexo-theme-matery/source/_data/recommends.json 移动到 my-blog/source/_data/下修改配置即可
2.8 配置网站favicon和网站LOGO
如果保持默认配置,需要替换掉favicon.png
和logo.png
两个文件。
也可以修改到指定文件名称。
# Configure website favicon and LOGO
# 配置网站favicon和网站LOGO
favicon: /favicon.png
logo: /medias/logo.png
2.9 首页banner中的第二个按钮的配置
# The configuration of the second button in the home banner,
# including the display name of the button, the font awesome icon, and the hyperlink to the button.
# 首页 banner 中的第二个按钮的配置,包括按钮的显示名称、font awesome图标和按钮的超链接.
indexbtn:
enable: false #如果需要,可以开启。
name: Github
icon: fab fa-github-alt
url: https://github.com/doghoo
关闭后效果
2.10 首页个人信息配置
个人信息,修改成自己的。
# The configurations of the second line of home banner
# icon/button will not show up if you leave the corresponding socialLink empty
# 首页 banner 中的第二行个人信息配置,留空即不启用
socialLink:
github: https://github.com/doghoo
email: 94190234@qq.com
facebook: # https://www.facebook.com/xxx
twitter: # https://twitter.com/xxx
qq: 94190234
weibo: # https://weibo.com/xxx
zhihu: # https://www.zhihu.com/xxx
rss: true # true、false
2.11 文章TOC功能
文庄目录,建议打开。
# Whether to activate the Post TOC, and Configure which title types are supported by TOC support.
# You can add `toc: false` to the Front-matter of a post to turn off the TOC.
# 是否激活文章 TOC 功能,并配置TOC支持选中哪些标题类型,这是全局配置。
# 可以在某篇文章的 Front-matter 中再加上`toc: false`,使该篇文章关闭TOC目录功能
toc:
enable: true
heading: h2, h3, h4
collapseDepth: 0 # 目录默认展开层级
showToggleBtn: true # 是否显示切换TOC目录展开收缩的按钮
2.12 代码块相关
保持默认
# 代码块相关
code:
lang: true # 代码块是否显示名称
copy: true # 代码块是否可复制
shrink: true # 代码块是否可以收缩
break: false # 代码是否折行
2.13 是否激活打赏功能
保持默认配置,需要去替换掉 wechat.png
和 alipay.jpg
两个文件,改成自己的二维码, 路径 source/medias/reward
。
# 是否激活文章末尾的打赏功能,默认激活(你替换为的你自己的微信、支付宝二维码图片、或者使用网络图片也可以).
reward:
enable: true
title: 你的赏识是我前进的动力
wechat: /medias/reward/wechat.png
alipay: /medias/reward/alipay.jpg
2.14 是否激活复制功能
# Whether to activate the copyright information of the blog and author when copying the post content.
# minCharNumber: Approve copyright information by copying at least how many characters.
# 是否激活复制文章时追加博客和作者的版权信息.
copyright:
enable: true #保持默认,则不开启。
minCharNumber: 120 # 至少复制多少个字符就追加版权信息.
description: 本文章著作权归作者所有,任何形式的转载都请注明出处
2.15 是否激活mathjax
默认不开启。
# 是否激活mathjax数学公式,这是全局配置,但文章仍然不会都开启mathjax渲染,
# 考虑到mathjax加载比较耗时,你还需要在需要渲染的文章的Front-matter中再加上`mathjax: true`才行.
mathjax:
enable: false
cdn: https://cdn.bootcss.com/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML
2.16 字数统计等
# 文章字数统计、阅读时长、总字数统计等
# 文章信息--若要开启文章字数统计,需要安装 hexo-wordcount 插件,安装命令: `npm i --save hexo-wordcount`
postInfo:
date: true # 发布日期
update: false # 更新日期
wordCount: true # 文章字数统计
totalCount: false # 站点总文章字数
min2read: true # 文章阅读时长
readCount: true # 文章阅读次数
开启后效果如下
2.17 是否点击显示’爱心’效果
# 是否激活点击页面的'爱心'效果,默认激活.
clicklove:
enable: false
2.18 关于页面配置
关于页面也是个人信息,所以要修改。
# 在”关于”页面中配置个人信息,包括头像、职业和个人介绍.
profile:
avatar: /medias/avatar.jpg
career: Software Engineer
introduction:
# config my projects informations in about page.
# If you don't want to display this `My Projects` content, you can deactivate or delete this configuration.
# 在“关于”页面配置"我的项目"信息,如果你不需要这些信息则可以将其设置为不激活或者将其删除.
myProjects:
enable: false
data:
hexo-theme-matery:
icon: fas fa-file-alt
iconBackground: 'linear-gradient(to bottom right, #66BB6A 0%, #81C784 100%)'
url: http://github.com/blinkfox/hexo-theme-matery
desc: This is a Hexo blog theme with 'Material Design' and responsive design.
Fenix:
icon: fas fa-database
iconBackground: 'linear-gradient(to bottom right, #F06292 0%, #EF5350 100%)'
url: https://github.com/blinkfox/fenix
desc: 这是 Spring Data JPA 复杂或动态 SQL 查询的扩展库。
typora-vue-theme:
icon: fas fa-file-alt
iconBackground: 'linear-gradient(to bottom right, #29B6F6 0%, #1E88E5 100%)'
url: https://github.com/blinkfox/typora-vue-theme
desc: This is a typora theme inspired by Vue document style.
# config my skills informations in about page.
# If you don't want to display this `My Skills` content, you can deactivate or delete this configuration.
# 在“关于”页面配置"我的技能"信息,如果你不需要这些信息则可以将其设置为不激活或者将其删除.
mySkills:
enable: true
data:
C/C++:
background: 'linear-gradient(to right, #FF0066 0%, #FF00CC 100%)'
percent: 85%
Qt:
background: 'linear-gradient(to right, #9900FF 0%, #CC66FF 100%)'
percent: 80%
Linux:
background: 'linear-gradient(to right, #2196F3 0%, #42A5F5 100%)'
percent: 80%
Go:
background: 'linear-gradient(to right, #00BCD4 0%, #80DEEA 100%)'
percent: 70%
SQL:
background: 'linear-gradient(to right, #4CAF50 0%, #81C784 100%)'
percent: 90%
嵌入式:
background: 'linear-gradient(to right, #FFEB3B 0%, #FFF176 100%)'
percent: 75%
# config gallery of my photos in about page.
# If you don't want to display this `Gallery` content, you can deactivate or delete this configuration.
# 在“关于”页面配置"我的相册"图片,如果你不需要这些信息则可以将其设置为不激活或者将其删除.
myGallery:
enable: true
data:
- /medias/featureimages/0.jpg
- /medias/featureimages/1.jpg
- /medias/featureimages/2.jpg
# Whether to display post-calender in the `archive` page
# 设置在归档页面中是否显示'文章日历'控件
postCalendar: true
2.19 归档页面配置
# Whether to display post-calender in the `archive` page
# 设置在归档页面中是否显示'文章日历'控件
postCalendar: true
开启后样式如下
2.20 留言功能
全部保持默认的关闭状态。
2.21 阅读文章密码验证功能
默认不开启
# 阅读文章的密码验证功能,如要使用此功能请激活该配置项,并在对应文章的Front-matter中写上'password'的键和加密后的密文即可.
# 请注意:为了保证密码原文不会被泄露到网页中,文章的密码必须是通过'SHA256'加密的,这样就不会被破解.
verifyPassword:
enable: false
promptMessage: 请输入访问本文章的密码
errorMessage: 密码错误,将返回主页!
2.22 不蒜子网站统计
默认开启
# busuanzi(http://busuanzi.ibruce.info/) website statistics
# 不蒜子(http://busuanzi.ibruce.info/) 网站统计
busuanziStatistics:
enable: true
totalTraffic: true # 总访问量
totalNumberOfvisitors: true # 总人次
2.23 副标题打字效果
# 打字效果副标题.
# 如果有符号 ‘ ,请在 ’ 前面加上 \
subtitle:
enable: false #可以关闭
loop: true # 是否循环
showCursor: true # 是否显示光标
startDelay: 300 # 开始延迟
typeSpeed: 100 # 打字速度
backSpeed: 50 # 删除速度
sub:
- 从来没有真正的绝境, 只有心灵的迷途
- Never really desperate, only the lost of the soul
开启后效果如下:
2.24 ICP备案
如有备案,建议启用。
#ICP备案信息尾部显示
icp:
enable: true
url: https://beian.miit.gov.cn # 备案链接
text: 京ICP备16019129号-1 # 备案信息
图参见2.2
2.25 CDN访问加速
开启需要参考如下配置方法
# CDN访问加速
# 第一次使用本功能,一定要先配置url,再`hexo cl && hexo g && hexo d`部署到GitHub的仓库,注意!必须是GitHub的仓库!
# 如果必须要使用国内的coding或者gitee,可以采用双部署,同时将网站部署到两个仓库(其中一个必须是GitHub的仓库)
# URL配置规则(例子如下): https://cdn.jsdelivr.net/gh/你的GitHub用户名/你的仓库名
# 如果想关闭此功能,将 url地址 注释或删除即可!
#
# 注:配置了此项,就代表着本地调试的时候,网站依然会去GitHub请求资源(原来的资源),本地调试的时候记得将 此项配置 注释或者删除掉
# 更多关于访问速度优化,请查看:https://blog.sky03.cn/posts/42790.html
# 注:jsdelivr可以自动帮你生成.min版的js和css,所以你在上面设置js及css路径中可以直接写.min.xxx
jsDelivr:
url: # https://cdn.jsdelivr.net/gh/skyls03/skyls03.github.io
3、其他修改
/source/categories/index.md
---
title: categories
date: 2021-04-26 10:48:57
type: "categories"
layout: "categories"
---
/source/tags/index.md
---
title: tags
date: 2021-04-26 10:48:58
type: "tags"
layout: "tags"
---
/source/about/index.md
---
title: about
date: 2021-04-26 10:48:59
type: "about"
layout: "about"
---
/source/contact/index.md
---
title: contact
date: 2021-04-26 10:49:01
type: "contact"
layout: "contact"
---
/source/friends/index.md
---
title: friends
date: 2021-04-26 10:49:02
type: "friends"
layout: "friends"
---
/source/404/index.md
---
title: 404
date: 2021-04-26 10:49:06
type: "404"
layout: "404"
description: "Oops~,我崩溃了!找不到你想要的页面 :("
---
source
目录下新建 _data
目录,在 _data
目录中新建 friends.json
文件,文件内容如下所示:
[{
"avatar": "http://image.luokangyuan.com/4027734.jpeg",
"name": "闪烁之狐",
"introduction": "Matery的作者",
"url": "http://blinkfox.com/",
"title": "前去学习"
}, {
"avatar": "https://godweiyang.com/medias/avatars/avatar.jpg",
"name": "godweiyang",
"introduction": "分享深度学习与NLP算法",
"url": "https://godweiyang.com",
"title": "前去学习"
}]
/scaffolds/post.md
修改为如下代码:
---
title: {{ title }}
date: {{ date }}
author:
img:
coverImg:
top: false
cover: false
toc: true
mathjax: false
password:
summary:
tags:
categories:
---
属性名 | 默认值 | 建议 |
---|---|---|
title | 自动生成 | 不变 |
date | 自动生成 | 不变 |
img | featureImages中的某一张 | 文章特征图,可以通过URL指定 |
top | true | 文章置顶,一般选false |
cover | false | 是否加入首页轮播封面中 |
coverImg | 无 | 如果cover=true,则需要指定封面图 |
password | 无 | 一般不需要密码 |
toc | true | 是否开启文章目录,建议关闭 |
summary | 无 | 文章摘要 |
categories | 无 | 文章分类,一篇文章只属于一个分类 |
tags | 无 | 文章标签,一篇文章可以多个标签 |
三、运行
1、新建文章
hexo new hello-world
在~/work/blog/source/_posts/
目录下会生成一个hello-world.md
文件
2、生成静态网页
hexo clean
hexo g
hexo s
第一步,clean, 清除上次生成的页面;
第二步,g(generate),生成静态页面;
第三步,s(server),在本地建立服务可以查看静态网页。
3、部署到GitHub
hexo d
d(deploy),部署页面到GitHub上,具体设置见_config.yml
的Deployment部分。除了可以部署到GitHub上,还可以部署到其他地方。
git如果配置了CNAME绑定域名,需要在public下创建一个CNAME文件,保存绑定的域名,见下图:
End.
Thanks!