Hexo类型博客集成打赏功能

简介:

关于如何使用Hexo+Hexo主题搭建博客系统,可以参考我之前的博客的介绍:github pages + Hexo + 域名绑定搭建个人博客,本文主要介绍如何集成文章的打赏功能,打赏的效果如图。
这里写图片描述
该效果就是在每篇文章的后面添加一个打赏功能,当点击“赏”按钮后会弹出一个打赏的窗口,想要体验的可以点击下面的地址来完成体验:
http://www.xiangzhihong.com/

其实上实现也比较简单,我的博客是使用的Snippet主题 ,当然,如果你的前端知识了得,你也可以自己修改样式和风格。在Snippet主题集成打赏功能只需要修改两个地方。

1,新增css文件

首先,打开系统的themes-->snippet文件-->source-->css添加相应的样式。


*,*:before,*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
}

.reward {
    padding: 5px 0
}

.reward .reward-notice {
    font-size: 14px;
    line-height: 14px;
    margin: 15px auto;
    text-align: center
}

.reward .reward-button {
    font-size: 28px;
    line-height: 58px;
    position: relative;
    display: block;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    padding: 0;
    -webkit-user-select: none;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    border: 1px solid #f1b60e;
    border-radius: 50%;
    background: #fccd60;
    background: -webkit-gradient(linear,left top,left bottom,color-stop(0,#fccd60),color-stop(100%,#fbae12),color-stop(100%,#2989d8),color-stop(100%,#207cca));
    background: -webkit-linear-gradient(top,#fccd60 0,#fbae12 100%,#2989d8 100%,#207cca 100%);
    background: linear-gradient(to bottom,#fccd60 0,#fbae12 100%,#2989d8 100%,#207cca 100%)
}

.reward .reward-code {
    position: absolute;
    top: -220px;
    left: 50%;
    display: none;
    width: 350px;
    height: 200px;
    margin-left: -175px;
    padding: 15px;
    border: 1px solid #e6e6e6;
    background: #fff;
    box-shadow: 0 1px 1px 1px #efefef
}

.reward .reward-button:hover .reward-code {
    display: block
}

.reward .reward-code span {
    display: inline-block;
    width: 150px;
    height: 150px
}

.reward .reward-code span.alipay-code {
    float: left
}

.reward .reward-code span.alipay-code a {
    padding: 0
}

.reward .reward-code span.wechat-code {
    float: right
}

.reward .reward-code img {
    display: inline-block;
    float: left;
    width: 150px;
    height: 150px;
    margin: 0 auto;
    border: 0
}

.reward .reward-code b {
    font-size: 14px;
    line-height: 26px;
    display: block;
    margin: 0;
    text-align: center;
    color: #666
}

.reward .reward-code b.notice {
    line-height: 2rem;
    margin-top: -1rem;
    color: #999
}

.reward .reward-code:after,.reward .reward-code:before {
    position: absolute;
    content: '';
    border: 10px solid transparent
}

.reward .reward-code:after {
    bottom: -19px;
    left: 50%;
    margin-left: -10px;
    border-top-color: #fff
}

.reward .reward-code:before {
    bottom: -20px;
    left: 50%;
    margin-left: -10px;
    border-top-color: #e6e6e6
}

这个样式是专门处理打赏部分的。

2,然后在post.ejs添加打赏的逻辑

打开系统的themes-->snippet文件-->layout下的post.ejs文件,在post-footer标签之上,也就是文末,添加如下js打赏逻辑。

<!--打赏-->
        <div class="reward">
       <div class="reward-button">赏 <span class="reward-code">
        <span class="alipay-code"> <img class="alipay-img wdp-appear" src="http://ohe65w0xx.bkt.clouddn.com/alipay.png"><b>支付宝打赏</b> </span> 
        <span class="wechat-code"> <img class="wechat-img wdp-appear" src="http://ohe65w0xx.bkt.clouddn.com/weipay.png"><b>微信打赏</b> </span> 
       </div>
      <p class="reward-notice">如果文章对你有帮助,欢迎点击上方按钮打赏作者</p>
      </div>
      <!--打赏-->

说明:我这里的图片是第三方存管的。其他模式的主题大体相同,大家可以自行百度修改相应的文件。

附件:打赏功能源码

目录
相关文章
|
2月前
|
传感器 监控 搜索推荐
智能服装:集成健康监测功能的纺织品——未来穿戴科技的新篇章
【10月更文挑战第7天】智能服装作为穿戴科技的重要分支,正以其独特的技术优势和广泛的应用前景,成为未来科技发展的亮点之一。它不仅改变了我们对服装的传统认知,更将健康监测、运动训练、医疗康复等功能融为一体,为我们的生活带来了更多的便利和可能。随着技术的不断进步和市场的日益成熟,我们有理由相信,智能服装将成为未来穿戴科技的新篇章,引领我们走向更加健康、智能、可持续的生活方式。
|
2月前
|
前端开发 JavaScript UED
探索Python Django中的WebSocket集成:为前后端分离应用添加实时通信功能
通过在Django项目中集成Channels和WebSocket,我们能够为前后端分离的应用添加实时通信功能,实现诸如在线聊天、实时数据更新等交互式场景。这不仅增强了应用的功能性,也提升了用户体验。随着实时Web应用的日益普及,掌握Django Channels和WebSocket的集成将为开发者开启新的可能性,推动Web应用的发展迈向更高层次的实时性和交互性。
83 1
|
4月前
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
定时任务在企业应用中至关重要,常用于异步数据处理、自动化运维等场景。在单体应用中,利用Java的`java.util.Timer`或Spring的`@Scheduled`即可轻松实现。然而,进入微服务架构后,任务可能因多节点并发执行而重复。Spring Cloud Alibaba为此发布了Scheduling模块,提供轻量级、高可用的分布式定时任务解决方案,支持防重复执行、分片运行等功能,并可通过`spring-cloud-starter-alibaba-schedulerx`快速集成。用户可选择基于阿里云SchedulerX托管服务或采用本地开源方案(如ShedLock)
131 1
|
1月前
|
JSON Java API
springboot集成ElasticSearch使用completion实现补全功能
springboot集成ElasticSearch使用completion实现补全功能
35 1
|
2月前
|
人工智能 JavaScript 网络安全
ToB项目身份认证AD集成(三完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法
本文详细介绍了如何使用 `ldapjs` 库在 Node.js 中实现与 Windows AD 的交互,包括用户搜索、身份验证、密码修改和重置等功能。通过创建 `LdapService` 类,提供了与 AD 服务器通信的完整解决方案,同时解决了中文字段在 LDAP 操作中被转义的问题。
|
2月前
|
存储 前端开发 Java
Spring Boot 集成 MinIO 与 KKFile 实现文件预览功能
本文详细介绍如何在Spring Boot项目中集成MinIO对象存储系统与KKFileView文件预览工具,实现文件上传及在线预览功能。首先搭建MinIO服务器,并在Spring Boot中配置MinIO SDK进行文件管理;接着通过KKFileView提供文件预览服务,最终实现文档管理系统的高效文件处理能力。
318 11
|
5月前
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
Spring Cloud Alibaba 发布了 Scheduling 任务调度模块 [#3732]提供了一套开源、轻量级、高可用的定时任务解决方案,帮助您快速开发微服务体系下的分布式定时任务。
14995 29
|
3月前
|
机器学习/深度学习 人工智能 搜索推荐
如何让你的Uno Platform应用秒变AI大神?从零开始,轻松集成机器学习功能,让应用智能起来,用户惊呼太神奇!
【9月更文挑战第8天】随着技术的发展,人工智能与机器学习已融入日常生活,特别是在移动应用开发中。Uno Platform 是一个强大的框架,支持使用 C# 和 XAML 开发跨平台应用(涵盖 Windows、macOS、iOS、Android 和 Web)。本文探讨如何在 Uno Platform 中集成机器学习功能,通过示例代码展示从模型选择、训练到应用集成的全过程,并介绍如何利用 Onnx Runtime 等库实现在 Uno 平台上的模型运行,最终提升应用智能化水平和用户体验。
61 1
|
4月前
|
JavaScript 网络协议 API
【Azure API 管理】Azure APIM服务集成在内部虚拟网络后,在内部环境中打开APIM门户使用APIs中的TEST功能失败
【Azure API 管理】Azure APIM服务集成在内部虚拟网络后,在内部环境中打开APIM门户使用APIs中的TEST功能失败
|
5月前
|
前端开发 JavaScript API
【Django+Vue3 线上教育平台项目实战】构建课程详情页与集成视频播放功能
随着数字化教育的兴起,构建一个高效、用户友好的线上教育平台至关重要。本文将探讨如何使用Django与Vue.js 3结合,实现一个包含课程列表和课程详情页(含视频播放功能)的线上教育平台部分。本文主要介绍了如何设计数据库模型、处理数据查询、构建动态前端界面,并集成视频播放功能,为用户带来流畅的学习体验。
【Django+Vue3 线上教育平台项目实战】构建课程详情页与集成视频播放功能