Decentralization? We're still early!
返回課程

主权个人的WordPress入门课

0%完成
0/0 Steps
  1. 第一部分 WordPress基础知识入门

    WordPress:内容创作者的知识输出及展示利器
  2. WordPress的开源生态:开源软件运动、GPL协议与AI赋能
  3. WordPress的软件版本、路线图与社区文化
  4. 值得关注的WordPress信息源与常用工具
  5. 五分钟安装指南、主题插件与备份还原方法
  6. 第二部分 WordPress与本地知识管理
    如何在本地电脑/服务器快速部署WordPress站点
  7. 最强CMS:WordPress的文件结构、前端与后端
  8. 学习使用Gutenberg编辑器进行内容创作和排版
  9. 学习使用全站编辑主题(FSE)进行站点设计
  10. 自定义文章类型:WordPress的基础功能及其拓展
  11. 第三部分 如何在云端部署WordPress
    云端部署WordPress的方法:选购虚拟主机或VPS
  12. 如何实现WordPress站点的自动化部署
  13. 如何优化Linux服务器设置实现安全加固
  14. 如何压缩WordPress站点图片并设置CDN
  15. 第四部分 WordPress的维护优化与安全加固
    WordPress数据管理:学习导入导出数据、清理冗余数据
  16. 动态数据调取优化:为WordPress站点添加配置Redis缓存
  17. 页面速度优化:为WordPress站点添加配置fastcgi缓存
  18. 优化WordPress的安全设置,实现站点的安全加固
  19. 第五部分 WordPress主题及插件进阶研究
    WordPress主题的选择与站点设计基础知识
  20. 善用WordPress插件:优秀插件推荐及其使用
  21. 学习使用Kadence Blocks优化页面设计
  22. 学习使用Jetengine为WordPress创建管理动态内容
  23. 学习使用LearnDash创建 WordPress 学习管理系统
  24. 学习使用Woocommerce创建网上商店
  25. 第六部分 内容创作者的WordPress:迈向Web3
    如何通过WordPress打造个人品牌:一个简易指南
  26. AI时代的内容创作:文章配图与音视频版本生成
  27. 如何使用JPG Store铸造基于Cardano链的NFT
  28. 为WordPress添加比特币收款和比特币支付网关
  29. 为WordPress添加Cardano支付网关和Cardano钱包登录
  30. 为WordPress添加以太坊支付网关和以太坊钱包登录
  31. WordPress用户管理与会员管理、内容门控
  32. 第七部分 WordPress汉化与设计优化
    WordPress主题、插件的汉化:Poedit 使用教程
  33. 为WordPress站点添加自定义字体、繁简体转换、多语言
  34. 如何通过调整CSS美化WordPress站点细节
  35. 如何开发自定义插件完善WordPress功能
  36. WordPress的功能扩展:FSE与Interactivity API
  37. 第八部分 AI时代的WordPress实践
    AI赋能WordPress开发:技术实践与未来展望
  38. Trilium RSS Digest 插件使用教程
  39. Cardano NFT Minter 插件使用教程
  40. Trilium AI Design 插件使用教程
課 29 的 40
In Progress

为WordPress添加Cardano支付网关和Cardano钱包登录

Brave 2024-01-28

1. 课程导言与背景知识

1.1 为什么选择Cardano(ADA)?

Cardano是第三代区块链平台,由以太坊联合创始人Charles Hoskinson于2017年创立。与其他区块链相比,Cardano具有独特的技术优势:

  • 🔬 学术驱动的开发方法:Cardano是首个通过同行评审学术研究构建的区块链,其协议设计经过严格的数学验证
  • 🌱 权益证明(Proof of Stake)共识机制:采用Ouroboros协议,能耗仅为比特币的万分之一,更加环保可持续
  • 📈 原生资产支持:Cardano支持原生代币(Native Assets),无需智能合约即可创建和转移代币,降低了复杂性和潜在风险
  • 💹 市场地位:截至2025年,ADA持续位列加密货币市值前十,具有良好的流动性和价格稳定性

1.2 为什么要在WordPress中集成Cardano支付?

在当今数字经济时代,将Cardnao支付集成到WordPress网站中,具有以下战略意义:

优势维度具体说明
🌍 全球化支付突破传统金融边界,支持来自全球任何地区的客户无摩擦支付,无需依赖信用卡网络或银行转账
💰 降低交易成本相比传统支付网关2.9%+0.30的费率,区块链交易费用通常更低,尤其是Cardano网络的交易费用约为0.170.20ADA(约合0.30的费率,区块链交易费用通常更低,尤其是Cardano网络的交易费用约为0.17-0.20 ADA(约合0.30的费率,区块链交易费用通常更低,尤其是Cardano网络的交易费用约为0.17−0.20ADA(约合0.05-0.10)
🔒 增强支付安全区块链的不可篡改性确保交易记录永久可追溯,降低欺诈风险
🎯 吸引加密货币社区Cardano拥有活跃的社区生态,接受ADA支付可以吸引这一高价值用户群体
快速结算Cardano网络交易确认时间约为20秒,资金几乎即时到账

1.3 课程学习目标

完成本课程后,你将能够:

  1. ✅ 理解WordPress与区块链支付集成的技术原理
  2. ✅ 独立完成Spoddano支付网关的安装与配置
  3. ✅ 评估并选择适合自己业务需求的Cardano支付方案
  4. ✅ 实现Cardano钱包登录功能,构建Web3用户体验
  5. ✅ 诊断和解决常见的集成问题

2. Cardano支付网关方案概览

2.1 现有方案对比

在为WordPress/WooCommerce选择Cardano支付解决方案时,目前市场上有以下主要选项:

方案名称类型特点适用场景维护状态
Spoddano专用插件轻量级、使用CoinMarketCap汇率API小型商店、快速部署活跃(v1.2.1,2025年2月更新)
Sargapay专用插件每笔订单生成唯一收款地址,支持HD钱包(Yoroi、Adalite、Daedalus)需要自动化对账的中型商店活跃
Cardano Mercury专用插件支持ADA及任何Cardano原生资产,零手续费,通过TapTools API获取价格需要接受NFT或自定义代币的商店Beta阶段(v2.0)
CardanoPress综合平台钱包登录+支付+NFT门控内容+质押池委托,由Cardano社区Fund 9资助构建完整Web3体验的站点活跃
XAIGATE多币种网关支持BTC、ETH、ADA、SOL等多种加密货币需要接受多种加密货币的商店活跃

2.2 如何选择合适的方案?

根据你的业务需求,可以参考以下决策流程:

┌─────────────────────────────────────────────────────────────────┐
│                    你的主要需求是什么?                           │
└─────────────────────────────────────────────────────────────────┘
                              │
        ┌─────────────────────┼─────────────────────┐
        ▼                     ▼                     ▼
   仅接受ADA支付          需要钱包登录功能      需要接受多种加密货币
        │                     │                     │
        ▼                     ▼                     ▼
┌───────────────┐    ┌───────────────┐    ┌───────────────┐
│ 订单量如何?   │    │ CardanoPress  │    │   XAIGATE     │
└───────────────┘    └───────────────┘    └───────────────┘
        │
   ┌────┴────┐
   ▼         ▼
 低/中      高
   │         │
   ▼         ▼
Spoddano  Sargapay
(手动验证)(自动地址生成)

3. Spoddano插件详解

3.1 插件概述

⚠️ 重要提示:此插件仅支持WooCommerce经典结账页面(Classic Checkout),不支持新版区块式结账(Block Checkout)。

Spoddano – Cardano For WooCommerce 是一款轻量级的Cardano支付网关插件,使卖家能够在WooCommerce商店中接受Cardano(ADA)加密货币支付。

该插件使用CoinMarketCap.com提供的实时汇率API,确保价格转换的准确性。卖家只需输入自己的Cardano钱包收款地址和可选的二维码图片,买家即可使用自己的钱包完成支付。

🔄 工作流程:

┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐
│  买家    │───▶│  查看    │───▶│  获取    │───▶│  钱包    │───▶│  输入    │
│  下单    │    │  ADA金额 │    │  收款地址 │    │  转账    │    │ 交易ID  │
└──────────┘    └──────────┘    └──────────┘    └──────────┘    └──────────┘
                                                                     │
                                                                     ▼
┌──────────┐    ┌──────────┐    ┌──────────┐    ┌────────────┐    ┌──────────┐
│  订单    │◀───│  卖家    │◀───│  区块链  │◀───│  订单    │◀───│  提交    │
│  完成    │    │  确认    │    │  验证    │    │ 处理中   │    │  订单    │
└──────────┘    └──────────┘    └──────────┘    └──────────┘    └──────────┘

3.2 关于经典结账与区块式结账

从WooCommerce 8.3版本开始,新创建的商店默认使用基于Gutenberg区块的购物车和结账页面。这两种结账方式存在根本性的技术差异:

特性经典结账(Classic)区块式结账(Block)
底层技术PHP模板 + [woocommerce_checkout]短代码React组件 + Gutenberg区块
自定义方式PHP钩子(hooks)和过滤器(filters)JavaScript/React
插件兼容性大多数传统插件完全兼容需要插件专门适配
布局方式传统表单布局现代化单列布局,拖拽式编辑
用户体验成熟稳定更现代化,移动端友好

如果你的商店使用的是区块式结账,需要先将其切换为经典结账才能使用Spoddano:

  1. 进入 WordPress后台 → 页面 → 编辑"结账"页面
  2. 点击区块工具栏最左侧的"转换"按钮
  3. 选择"经典短代码"
  4. 保存页面

3.3 安装步骤

📦 从WordPress后台安装:

  1. 登录WordPress管理后台
  2. 导航至 插件 → 添加新插件
  3. 在搜索框中输入 "Spoddano"
  4. 找到插件后点击 "立即安装"
  5. 安装完成后点击 "启用"

3.4 获取CoinMarketCap API密钥

Spoddano使用CoinMarketCap API获取ADA的实时汇率。你需要注册一个免费的API密钥:

📋 注册步骤:

  1. 访问 https://pro.coinmarketcap.com/signup/
  2. 填写注册信息(邮箱、密码等)
  3. 选择 "Basic" 免费计划
  4. 完成邮箱验证
  5. 登录后在Dashboard中复制你的API Key

💡 关于免费计划的配额限制:

限制项目免费Basic计划
月度配额10,000 credits/月(约333次调用/天)
可用端点11个核心端点(包括价格查询)
历史数据不支持
使用范围仅限个人使用
速率限制每分钟有调用次数上限,超限返回HTTP 429错误

⚠️ 重要说明:

  • Spoddano v1.2.0版本优化了API调用机制,改用Transients缓存,大幅减少了API调用次数
  • 对于大多数小型商店,免费计划的配额完全足够
  • 如果你的商店流量较大,可能需要考虑升级到付费计划

3.5 配置插件

⚙️ 详细配置步骤:

  1. 导航至 WooCommerce → 设置 → 支付
  2. 找到 Cardano (ADA) 选项,点击 "管理"
  3. 按以下说明填写各项配置:
配置项说明示例/建议
启用/禁用开启Cardano支付选项✅ 勾选启用
API密钥填入CoinMarketCap API Keyxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
收款地址你的Cardano钱包地址addr1qx...(以addr1开头的Shelley地址)
二维码图片可选,方便移动端用户扫码支付上传到媒体库后填入URL
支付说明显示在结账页面的自定义说明文字"请使用您的Cardano钱包完成支付..."
禁用交易ID字段v1.0.4新增,可选择关闭交易ID输入要求根据需求选择
  1. 点击 "保存更改"

🎉 配置完成!

3.6 交易验证流程

当买家完成支付后,你需要手动验证交易:

📤 收到订单后:

  1. 在订单详情中,你会看到买家提交的交易ID(Transaction ID/Hash)
  2. 点击订单后台或管理员邮件中提供的Cardano区块链浏览器链接
  3. 在浏览器中验证:
    • 交易是否已确认
    • 发送金额是否正确
    • 收款地址是否为你的钱包地址

💡 交易ID验证规则(v1.0.2+):

  • 必须为64个字符
  • 不能包含大写字母
  • 只能包含a-f的字母和数字0-9
  • 必须同时包含字母和数字

✅ 验证通过后,手动将订单状态更改为"已完成"。

3.7 版本更新历史

了解插件的迭代历史有助于理解其功能演进:

版本更新内容
1.2.1使用Transients替代Sessions,提升性能,减少API调用
1.2.0重构API调用机制,仅调用一次,优化结账页面性能
1.1.2修复二维码图片居中显示问题
1.0.9修复某些商店中地址溢出容器的问题
1.0.8修复金额重复显示的问题
1.0.7新增"复制金额"按钮,提升用户体验
1.0.6修复可能与其他网关冲突的全局变量问题
1.0.5修复邮件错误日志问题
1.0.4新增禁用交易ID字段选项,代码优化
1.0.3优化邮件和感谢页面的交易详情展示,添加Cardano浏览器直达链接
1.0.2添加交易ID验证规则,修复其他支付方式的Cardano详情显示bug
1.0.1修复使用其他支付方式时要求交易ID的bug,修复Firefox复制按钮问题
1.0.0首个稳定版本发布

4. 其他支付网关方案

4.1 Sargapay

📌 官方页面wordpress.org/plugins/sargapay/

Sargapay是另一款专为WooCommerce设计的Cardano支付插件,其核心特点是每笔订单生成唯一的收款地址,从而简化对账流程。

🔑 核心特性:

  • HD钱包支持:通过导出公钥(Extended Public Key)与Yoroi、Adalite、Daedalus等主流钱包集成
  • 唯一地址生成:每笔订单自动派生新地址,无需手动核对交易ID
  • 自动化程度更高:相比Spoddano的手动验证模式,更适合订单量较大的商店

📋 适用场景:

  • 日订单量超过10笔的中型商店
  • 需要简化财务对账流程的商家
  • 有一定技术基础,能够理解HD钱包概念的用户

4.2 Cardano Mercury

📌 官方仓库github.com/cardano-mercury/cardano-mercury-woocommerce

Cardano Mercury是一款功能强大的支付网关,支持接收ADA以及任何Cardano原生资产(Native Assets),通过TapTools API获取原生资产价格。

🔑 核心特性:

  • 零平台手续费:仅需支付Cardano网络交易费
  • 原生资产支持:可接受任何在TapTools上有价格的Cardano代币
  • NFT支付潜力:理论上可扩展支持NFT支付场景

⚠️ 注意事项:

  • 目前为v2.0-Beta版本,建议仅在测试环境或小额交易场景使用
  • 需要自行承担使用风险

4.3 CardanoPress(综合解决方案)

📌 官方网站cardanopress.io

📌 插件页面wordpress.org/plugins/cardanopress/

CardanoPress不仅仅是一个支付插件,而是一个完整的WordPress与Cardano区块链集成平台。它由Cardano社区在Fund 9中投票资助开发,对社区完全免费。

🔑 核心特性:

功能模块说明
钱包登录用户可使用Cardano钱包注册和登录网站,替代传统用户名密码
NFT门控内容根据用户钱包中的NFT授予内容访问权限
代币门控内容基于FT(同质化代币)持有量控制内容访问
质押池门控仅允许委托到特定质押池的用户访问特定内容
WooCommerce集成支持ADA支付及基于NFT/代币的会员系统
自定义NFT铸造页面可创建品牌化的NFT铸造体验

🔗 技术依赖:

  • 需要Blockfrost API与Cardano区块链通信
  • 需要安装CardanoPress基础插件及相应的扩展模块

📋 适用场景:

  • 需要构建完整Web3社区体验的站点
  • NFT项目官网
  • DAO组织的WordPress站点
  • 需要基于链上资产进行会员分级的服务型网站

4.4 方案对比总结

方案安装难度自动化程度扩展能力成本推荐指数
Spoddano⭐ 最简单手动验证仅支付免费⭐⭐⭐⭐
Sargapay⭐⭐半自动仅支付免费⭐⭐⭐⭐
Cardano Mercury⭐⭐⭐可配置原生资产免费⭐⭐⭐
CardanoPress⭐⭐⭐高度集成全功能免费⭐⭐⭐⭐⭐

5. Cardano钱包登录功能

5.1 什么是Web3钱包登录?

传统的Web2身份认证依赖用户名和密码,存在密码泄露、钓鱼攻击等安全风险。Web3钱包登录则采用完全不同的认证范式:

🔐 工作原理:

┌──────────────────────────────────────────────────────────────────┐
│                    Web3钱包登录流程                               │
└──────────────────────────────────────────────────────────────────┘

1. 用户点击"使用钱包登录"
         │
         ▼
2. 网站生成随机挑战消息(Challenge Message)
         │
         ▼
3. 用户的钱包请求签名确认
         │
         ▼
4. 用户在钱包中确认签名(使用私钥签名,但私钥从不离开钱包)
         │
         ▼
5. 网站验证签名与挑战消息是否匹配
         │
         ▼
6. 验证通过,用户登录成功(身份与钱包地址绑定)

✨ 核心优势:

  • 无密码:彻底消除密码泄露风险
  • 用户控制:私钥始终由用户掌控
  • 可验证身份:钱包地址即身份,链上资产可作为权限凭证
  • 跨平台通用:一个钱包可登录所有支持该标准的网站

5.2 WordPress钱包登录方案

方案一:CardanoPress(推荐)

CardanoPress提供了完整的Cardano钱包登录解决方案:

支持的钱包:

  • Nami
  • Eternl (原CCVault)
  • Flint
  • Typhon
  • GeroWallet
  • 以及所有符合CIP-30标准的Cardano钱包

主要功能:

  • ✅ 消息签名认证
  • ✅ 新用户自动注册
  • ✅ 与WordPress用户系统无缝集成
  • ✅ 支持基于钱包资产的角色分配

安装配置:

  1. 安装并激活 CardanoPress 基础插件
  2. 注册 Blockfrost 账号并获取API密钥(免费计划即可)
  3. 在WordPress后台配置Blockfrost API
  4. 启用钱包登录功能
  5. 将登录按钮添加到你的主题中

方案二:Web3 – Crypto Wallet Login & NFT Token Gating

📌 插件页面wordpress.com/plugins/web3-authentication

这是一个支持多链的Web3认证插件,同时支持Cardano和其他区块链:

支持的Cardano钱包:

  • Nami
  • Typhon
  • Flint

支持的其他区块链:

  • Ethereum(MetaMask等)
  • Polygon
  • Algorand
  • Solana

主要功能:

  • ✅ 热钱包和冷钱包登录支持
  • ✅ 可在WordPress默认登录页面显示钱包登录按钮
  • ✅ 基于NFT的角色分配
  • ✅ 基于NFT的页面/内容访问控制

📋 适用场景:

  • 需要支持多条区块链的项目
  • 用户群体包含不同区块链生态的社区

方案三:CAuth(开发者方案)

📌 官方文档cauth.org/docs/

CAuth是一个更底层的Cardano钱包认证解决方案,适合有开发能力的团队进行深度定制:

核心理念:

  • 利用现有Cardano钱包基础设施
  • 保持去中心化原则
  • 为仍需传统认证的dApp提供桥接方案

⚠️ 注意:此方案需要一定的前端和后端开发能力,不适合纯粹的WordPress用户。

5.3 NFT门控内容实现

NFT门控(Token Gating)是Web3时代内容变现的重要方式。通过CardanoPress,你可以实现:

门控类型说明应用场景
NFT策略ID门控用户需持有特定Policy ID的NFT才能访问NFT会员社区、独家内容
NFT元数据门控基于NFT属性(如稀有度)分配不同权限分级会员系统
代币持有量门控基于同质化代币数量控制访问项目代币持有者福利
质押委托门控仅委托到指定质押池的用户可访问质押池运营者社区

配置示例(CardanoPress):

  1. 安装 CardanoPress 及 Token Gating 扩展
  2. 在页面/文章编辑器中找到"Token Gating"设置面板
  3. 添加准入规则:
    • 选择门控类型(NFT/Token/Delegation)
    • 输入Policy ID或资产名称
    • 设置最低持有量要求(可选)
  4. 发布内容

未持有相应资产的用户将看到自定义的提示信息,而非受保护的内容。


6. 常见问题与故障排除

6.1 已知问题与解决方案

❌ 问题1:订单取消邮件报错

错误信息:

Warning: call_user_func_array() expects parameter 1 to be a valid callback, 
class 'WC_Gateway_spoddano' does not have a method 'email_instructions' 
in /public_html/wp-includes/class-wp-hook.php on line 309

原因分析:
这是Spoddano早期版本的一个已知bug,插件尝试调用一个不存在的邮件指令方法。

解决方案:

  1. 确保更新到最新版本(v1.2.1+),此问题在v1.0.5中已修复
  2. 如果仍然遇到问题,联系插件开发者:steven@spiraloutdesigns.com

❌ 问题2:支付方式不显示在结账页面

可能原因:

原因解决方案
使用了区块式结账切换到经典结账(见3.2节)
插件未正确启用WooCommerce → 设置 → 支付,确保Cardano选项已启用
API密钥无效检查CoinMarketCap API密钥是否正确,是否超出配额
收款地址未填写确保已填写有效的Cardano收款地址
缓存问题清除网站缓存、CDN缓存和浏览器缓存

❌ 问题3:汇率显示不正确或为零

排查步骤:

  1. 检查API配额:登录CoinMarketCap后台查看本月剩余credits
  2. 验证API密钥:确保复制时没有多余空格
  3. 检查货币设置:确保WooCommerce店铺货币在CoinMarketCap支持的货币列表中
  4. 查看错误日志:在WooCommerce → 状态 → 日志中查看相关错误

❌ 问题4:交易ID验证失败

交易ID必须满足以下条件:

  • ✅ 正好64个字符
  • ✅ 只包含小写字母a-f和数字0-9
  • ✅ 必须同时包含字母和数字

常见错误:

  • 复制时包含了多余的空格
  • 使用了区块hash而非交易hash
  • 从某些浏览器复制时格式被破坏

❌ 问题5:CardanoPress钱包连接失败

排查清单:

  1. 浏览器兼容性:确保使用Chrome、Firefox或Brave等支持WebExtension的浏览器
  2. 钱包扩展:确保已安装并解锁钱包浏览器扩展
  3. 网络环境:确保钱包连接的是主网(Mainnet)而非测试网
  4. Blockfrost配置:验证API密钥与选择的网络环境匹配
  5. 控制台错误:打开浏览器开发者工具(F12)查看Console中的错误信息

6.2 性能优化建议

为确保Cardano支付功能的稳定运行,建议采取以下优化措施:

  1. 启用对象缓存:使用Redis或Memcached,与Spoddano的Transients机制配合
  2. 合理配置CDN:确保动态结账页面不被缓存
  3. 监控API使用:定期检查CoinMarketCap API使用情况,避免超额
  4. 备份钱包:务必备份Cardano钱包的助记词,与WordPress网站备份分开保存

7. 课程总结与最佳实践

7.1 核心知识回顾

通过本课程,你已经学习了:

模块关键知识点
背景知识Cardano区块链特性、加密货币支付的商业价值
支付网关Spoddano安装配置、手动交易验证流程
替代方案Sargapay(自动地址)、Cardano Mercury(原生资产)、CardanoPress(全功能)
钱包登录Web3认证原理、CardanoPress钱包登录、NFT门控内容
故障排除常见问题诊断与解决方案

7.2 延伸学习资源

回复