前言:
静态网站建立之后我们需要对其做些细节修改
此博文包括文章、整站的一些细节修改,并增加一些统计功能
站点细节
大部分内容都能从官网找到,这里做个备忘录
头像设置
参考Next官网
主题配置文件
按描述路径放置图片,图片格式不重要,但必须为有效图片
1 | # Sidebar Avatar |
网站logo
此logo为页面在浏览器标签上显示图片
命名为.ico或.png文件
存放于sources\images\路径
- 主题配置:
1 | favicon: |
设置阅读全文
参考官网)
分页
插件安装
1 | npm install --save hexo-generator-index |
站点配置文件
1 | index_generator: |
社会化链接
这里只需要替换自己想要的图标名称即可
- 主题配置
social标签,打开或添加对应项,替换链接
文本的居中引用
以下三种任选其一,直接在md文件插入
1 | 1. <blockquote class="blockquote-center">blah blah blah</blockquote> |
背景动画
- 默认的无需插件安装 :
canvas_nest 与three_waves 二选一
隐藏强力驱动
直接修改配置文件
1 | footer: |
网页底部图标
主题配置:footer: icon: xxx
修改themes\next\layout_partials\footer.swig
footer.icon
关键字
图标放大:
1 | #原图: |
文章相关
文章版权声明
- 主题配置
1 | post_copyright: |
- 站点配置
url:http://yoururl.com #添加自己的url
最终会生成当前文章的完整url
文章底部添加’The End’
\themes\next\layout_macro\post.swig
post-body div
post.content
关键字 结束后
添加1
<div style="text-align:center;color: #ccc;font-size:14px;">—— The End ——</div>
如下:
1 | <div class="post-body...> |
添加位置不对容易出现 在首页
文章底部标签‘#’修改
\themes\next\layout_macro\post.swig
post-tags关键字:
1 | <footer class="post-footer"> |
rel="tag">#
替换为:
1 | rel="tag"><i class="fa fa-tag"> </i> |
文章小图标
主题配置 定义:
post #控制文章图标显示
icon: false
需要处理图标的找到对应图标,添加类似下面的代码来控制图标的显示:
<% if theme.xxx.icon %>
<% endif %>
xxx为当前元素标识
修改文件:\themes\next\layout_macro\post.swig
找到 icon
字符串
字数统计与阅读时间图标
post_wordcount 关键字
1 | {% raw %} |
改为:
1 | {% raw %} |
min2read 关键字
1 | {% raw %} |
改为:
1 | {% raw %} |
发表、更新等时间图标
created_at
1 | {% raw %} |
改为:
1 | {% raw %} |
updated_at
1 | {% raw %} |
改为:1
2
3
4
5
6
7
8
9
10{% raw %}
{% if theme.post_meta.updated_at %}
{% if theme.post_meta.icon %}#新增图标控制
<span class="post-meta-item-icon">
<i class="fa fa-calendar-check-o"></i>
</span>
{% endif %}
#省略
{% endif %}
{% endraw %}
文章评论计数图标
disqus.count关键字 ,主题配置设置为flase,最简单
或者按上述方法添加代码
1 | {% raw %} |
阅读时长
min2read 关键字
- 增加时间单位
语言文件
\themes\next\languagues\zh-Hans
增加 min2read_unit: 分钟
- 增加下面代码,去除多余符号
1 | <span class="post-meta-item-text">{{ __('post.min2read_unit') }}</span> |
post文件修改:
1 | {% raw %} |
改为
1 | {% raw %} |
上述几处修改效果:
相关统计
文章字数与阅读时长
安装 wordcount 插件
npm install hexo-wordcount --save
主题配置
1 | post_wordcount: |
文章阅读次数
我们这里可以使用 LeanCloud
需要提供 LeanCloud
的 App ID
及 App Key
功能启用
- 注册
『设置』菜单 进入 『应用 Key』 页面
拿到app_id及app_key。注意保密
为保证安全 ,进入 『安全中心』 页面 把域名添加到 『Web 安全域名』 内
- 主题配置
1 | leancloud_visitors |
此时, 大部分步骤已经完成,但是 阅读次数后面 啥也没有是什么鬼?
继续看
- 官网配置
LeanCloud 官网需要我们增加一些内容,才能正常使用 阅读次数统计功能
一图胜千言
注 Class 名称必须为 Counter ,权限以保证安全为主
最终,观察一下你的网站,是不是阅读次数上出现了 0 ?
为 0 是因为 统计初始化时,还没有数据
扩展:自定义修改文字展现
比如我想修改『阅读数』为 『热度』
themes\next\layout_macro\post.swig 文件
1 | <span class="leancloud-visitors-count"></span> |
新增符号:
1 | <span class="leancloud-visitors-count"></span> |
zh_Hans.yml
visitors: 热度 #原词修改为“热度”
站点访问
推荐使用高版本,毕竟相对来说配置简单
不蒜子统计uv 与pv:
主题配置文件
修改:
1 | busuanzi_count: |
以下配置:true 为开启,false 为关闭
1 | busuanzi_count: |
去除图标:
删除即可
上述几处效果:
其他及一些好玩的
Frok Me On GitHub
- 选定代码GitHub Ribbons
- 添加
themes\next\layout_layout.swig,添加到body内
标红处替换为你自己的github地址
头像旋转
方案参考: next\source\css\main.styl
为方便主题更新,代码改动比较大的原则上尽量使用自定义文件导入的方式。
优化实现方案:
自定义css 文件命名为
custom-sidebar.styl
完整路径:themes\next\source\css_custom\custom-sidebar.styl
引入自定义css,原文件主体代码不改动
themes\next\source\css_common\components\sidebar\sidebar-author.styl 模板末尾
@import "../../../_custom/custom-sidebar";
再加个放大效果custom-sidebar.styl
文件完整代码:
1 | .site-author-image { |
页面自定义样式
添加到themes\next\source\css_custom.styl
footer与文章内容间距
根据:source\css_common\outline\outline.styl
1 | // Main Section |
修改:
\themes\next\source\css_variables\custom.styl样式文件
$gap-between-main-and-footer = 40px
\themes\next\source\css_custom\custom.styl
添加代码:
1 | //页脚 |
设置动态title崩溃欺骗
\themes\next\source\js\src,新建custom-title.js
1 | <!--崩溃欺骗--> |
更改 \themes\next\layout_layout.swig 。在 </body 之前添加:
1 | <!--卖萌--> |
High一下
注意:主题升级文件路径有变化,代码不变
来源:zipperary,感谢大神
修改原则:减少源码修改,尽量使用自定义文件方式
header位置可添加到themes\next\layout_custom\header.swig
sidebar位置可添加到themes\next\layout_custom\sidebar.swig
源码:
1 | <li> <a title="把这个链接拖到你的Chrome收藏夹工具栏中" href='javascript:(function() { |