Hexo 博客添加打赏功能

<–more–>
spfk主题为例子~

第一步:新增打赏模块

layout_partial目录下 新建 donate.ejs 写上以下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<! -- 添加捐赠图标 -->
<div class ="post-donate">
<div id="donate_board" class="donate_bar center">
<a id="btn_donate" class="btn_donate" href="javascript:;" title="打赏"></a>
<span class="donate_txt">
&uarr;<br>
<%=theme.donate_message%>
</span>
<br>
</div>
<div id="donate_guide" class="donate_bar center hidden" >
<!-- 支付宝打赏图案 -->
<img src="/img/zhifubao.jpg" alt="支付宝打赏">
<!-- 微信打赏图案 -->
<img src="/img/weixin.jpg" alt="微信打赏">
</div>
<script type="text/javascript">
document.getElementById('btn_donate').onclick = function(){
$('#donate_board').addClass('hidden');
$('#donate_guide').removeClass('hidden');
}
</script>
</div>
<! -- 添加捐赠图标 -->

第二步: 设置打赏模块样式

source\css_partial目录下新建donate.styl 写入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
.donate_bar {
text-align: center;
margin-top: 5%
}

.donate_bar a.btn_donate {
display: inline-block;
width: 82px;
height: 82px;
margin-left: auto;
margin-right: auto;
background: url(http://img.t.sinajs.cn/t5/style/images/apps_PRF/e_media/btn_reward.gif)no-repeat;
-webkit-transition: background 0s;
-moz-transition: background 0s;
-o-transition: background 0s;
-ms-transition: background 0s;
transition: background 0s
}

.donate_bar a.btn_donate:hover {
background-position: 0 -82px
}

.donate_bar .donate_txt {
display: block;
color: #9d9d9d;
font: 14px/2 "Microsoft Yahei"
}
.donate_bar.hidden{
display: none
}

.post-donate{
margin-top: 80px;
}

#donate_guide{
height: 210px;
width: 420px;
margin: 0 auto;
}

#donate_guide img{
height: 200px;
height: 200px;
}

完成以后 切记在 source\css\style.styl文件内添加@import '_partial/donate

第三步: 将模块整合到文章内

layout_partial\article.ejs中的

……
标签内部添加以下内容:
1
2
3
<% if (!index && theme.donate && post.donate!=false){ %>
<%- partial('donate') %>
<% } %>

最后: 编写配置文件

我们可以在主题的 _config.yml 文件中关闭和打开打赏功能,还可以自定义设置打赏文案。

code
1
2
3
4
#是否开启打赏功能
donate: true
#打赏文案
donate_message: 欣赏此文?求鼓励,求支持!

如果需要关掉打上功能只需要 在文章中加上donate: false即可~