付费/加密Typecho付费下载插件
¥28付费 / 密码
密码获取或购买插件信息
JoePay/
├── Plugin.php 插件入口(激活/设置/钩子)
├── include/
│ ├── download.php 下载卡片、go 页面、订单、邮件发货、易支付
│ ├── paid.php 付费阅读、解锁 cookie
│ ├── admin.php 文章编辑页「下载设置」面板
│ └── mailer.php 轻量 SMTP 客户端
├── assets/
│ ├── base.css go/unlock 独立页的基础变量与重置
│ ├── joepay.css 卡片与页面样式(变量带兜底,不依赖主题)
│ ├── joepay.js 密码/付费方式切换
│ ├── admin.css 后台面板样式
│ └── cover.jpg 无封面时的默认图
└── README.md 使用说明
安装
JoePay 文件夹整个上传到 /usr/plugins/
后台「控制台 → 插件」启用 JoePay
点「设置」填 SMTP / 易支付 / 卡密 / 有效期 / 免责声明,点「发送测试邮件」验证
功能与之前一致
付费阅读:付费内容支付一次,本段内容长期可见免费 / 加密 / 付费 / 「加密或付费二选一」
/go、/unlock、/joe/download/notify、/joe/download/test 全部由插件在 index.php 的 begin 钩子上接管,不需要配伪静态
文章编辑页正文框下方的「下载设置」面板由插件输出(用 fields[dlmode] 等原字段名,老文章数据直接沿用)
与主题的兼容策略
主题现在会检测 JoePay_Plugin 是否存在:
插件启用:主题自动跳过自带的下载/付费阅读模块、路由、钩子、主题设置里的「下载设置」标签和文章字段,不会重复渲染、也不会出现两套设置
插件停用:主题仍按原样工作,老站不会因为没装插件而白屏
插件读取配置时优先插件设置,空项自动回退到主题里原来的同名设置(JPayApi / JSmtpHost 等),所以升级后不用重新填一遍
验证
插件 + 主题全部 PHP 文件过 PHP 8.4 解析器检查,0 错误
插件独立渲染测试通过:卡片带「付费/加密」角标和「密码获取或购买」按钮、链接指向 /go、资源地址来自插件目录;付费阅读未解锁时不泄露内容、摘要被抹掉;解锁链接正常
打包内容已核对(插件 11 个文件)

评论