这是一个集成一为主题及虎皮椒支付的打赏系统。

这类插件需求挺直接:网站内容有人愿意支持,站长希望能有一个比较完整的打赏入口,不只是放个收款码,而是能记录谁打赏了、打赏了多少钱、留言是什么,还能在前台展示一个支持者列表。
打赏系统1.jpg

这个插件做了什么

插件核心就是一套独立的打赏系统。

用户进入打赏页面后,可以填写:

  • 打赏金额
  • 名称
  • 网站地址
  • 留言
  • 支付方式
    金额支持后台预设,比如 5、10、20、50 元,也支持用户自己输入自定义金额。这个后面还专门修过一次,因为自定义金额这种小细节看起来不起眼,但实际使用时很容易影响支付体验。

打赏系统2.png

提交后,系统会创建一条打赏记录,再跳转到支付流程。支付成功后,记录状态会变成已支付,并根据后台设置决定是否自动展示到前台排行榜。

和一为主题的集成

这个插件比较特别的地方,是没有自己单独做一套支付配置,而是尽量复用 一为主题 / OneNav 主题 里已有的支付能力。

它会尝试读取主题里的支付配置,比如一为主题后台配置的虎皮椒 / 迅虎支付参数。这样站长不用在插件里再填一遍支付信息,减少重复配置。

当时做这个集成主要考虑两点:

第一,客户的网站本来就已经配置好主题支付了,如果插件再单独维护一套支付参数,后期容易混乱。

第二,打赏本质上也是一笔支付订单,复用主题原有支付体系更自然,也更容易和网站整体支付逻辑保持一致。

支付流程

支付这块做得比较完整。

插件支持创建支付订单、生成二维码、处理支付回调、检查支付状态。用户扫码支付后,页面会轮询支付状态,支付成功后自动提示感谢信息。

记录里会保存:

  • 打赏用户
  • 打赏金额
  • 留言
  • 用户网址
  • 支付方式
  • 支付订单号
  • 支付交易号
  • 支付时间
  • 显示状态
    这样后台可以清楚知道每一笔打赏的来源和状态。

前台展示

前台主要有几种入口。

一种是独立打赏页面,通过 URL 参数打开,不依赖单独建页面。另一种是短代码,可以插入打赏按钮、打赏表单或者打赏列表。还有一个比较贴合一为主题的设计:插件会尝试把打赏按钮挂到主题的右侧工具栏或底部工具栏里。

这点是专门为一为主题做的适配。因为 OneNav 这类导航主题通常会有固定的侧边工具按钮,比如返回顶部、夜间模式之类。打赏按钮放在那里,比硬塞到文章底部更自然。

打赏系统3.png

打赏排行榜

插件还做了一个排行榜挂件。

前台可以展示已支付、允许显示的打赏记录,按金额和排序权重展示。每条记录可以显示名称、金额、留言、网站地址。如果用户填了网址,点击名字还能跳到对方网站。

这个功能挺适合导航站、资源站、博客站。打赏的人不只是“付款”,也能在网站上留下一个展示位,有点友情链接和赞助墙的感觉。

后台管理

后台这块主要是为了方便运营。

打赏系统4.jpg

管理员可以:

  • 查看所有打赏记录
  • 搜索用户名称、网址、留言
  • 按支付状态筛选
  • 按是否显示筛选
  • 手动新增记录
  • 编辑打赏金额、状态、留言、排序
  • 批量设为已支付
  • 批量隐藏或显示
  • 批量删除
  • 拖拽调整展示排序
  • 设置默认打赏金额
  • 设置是否自动审核显示
    这个“自动审核”挺实用。小站可以开自动审核,用户支付成功后直接展示;如果站长担心留言内容不合适,也可以关闭自动审核,支付成功后先进入后台审核。