ZeptoMail 邮件发送插件
替代传统 SMTP,通过 Zoho ZeptoMail API 接管全站邮件发送

插件概述
ZeptoMail 邮件发送插件(xiunext_transmail)为 XiunoX 站点提供基于 Zoho ZeptoMail API 的邮件发送方案,以 HTTP API 调用替代传统 SMTP 协议,实现更稳定、更高效的邮件投递。插件安装后自动接管全站所有邮件发送场景,无需修改任何核心文件。
当前版本: 1.0.5 | 适用系统: XiunoX 1.1+ | 作者: Xiunext
核心特性
1. 全场景邮件接管
插件通过 Hook 机制无缝接管以下邮件发送场景:
场景 | 说明 |
|---|---|
注册验证码 | 用户注册时的邮箱验证码发送 |
密码找回 | 找回密码时的验证码发送 |
邮箱修改 | 用户修改绑定邮箱时的验证码发送 |
2. 全球多区域支持
内置 8 个 Zoho 数据中心节点,根据账号托管区域自动路由至最近的 API 端点:
zoho.com— 全球(默认)zoho.eu— 欧洲zoho.in— 印度zoho.com.cn— 中国zoho.com.au— 澳大利亚zohocloud.ca— 加拿大zoho.sa— 沙特zoho.jp— 日本
3. SMTP 故障回退
提供可配置的 SMTP 备用通道。当 ZeptoMail API 发送失败时,自动回退至站点原生 SMTP 配置继续投递,确保邮件不丢失。
4. 模板邮件支持
除直接发送 HTML/纯文本邮件外,还支持 ZeptoMail 模板发送(send_template),可通过 template_key 和 merge_info 调用 ZeptoMail 后台预设的邮件模板,实现内容与代码分离。
5. 安全与健壮性
Token 格式校验 — 严格验证
Zoho-enczapikey格式,防止注入邮箱地址校验 — 使用
FILTER_VALIDATE_EMAIL标准验证发件人名称过滤 — Unicode 安全正则,限制 50 字符
CSRF 防护 — 设置页表单内置 CSRF Token
双重 HTTP 客户端 — 优先 cURL(含 SSL 验证失败自动降级),回退
file_get_contents完整错误日志 — API 错误、HTTP 异常均记录至
xiunext_transmail_error日志
后台管理
插件提供独立的管理后台设置页面,包含:
发件人邮箱 — 须为 ZeptoMail 中已验证的地址
发件人名称 — 留空时自动使用站点名称
Send Mail Token — 密码输入框,支持显示/隐藏切换
账号托管区域 — 下拉选择 Zoho 数据中心
默认邮件格式 — HTML 富文本 / 纯文本
SMTP 备用通道 — 开关控制
测试邮件发送 — 保存配置后即时发送测试邮件验证连通性
右侧状态面板实时显示当前发送通道、发件身份和故障回退状态;快速配置指引帮助新用户三步完成设置。
同时,在系统 SMTP 设置页面会自动插入提示横幅,标明邮件发送已被 TransMail 接管,避免管理员重复配置。
插件联动
与 xnx_login_alert(登录提醒)插件深度兼容。当登录提醒插件已启用但站点未配置 SMTP 时,本插件自动接管登录提醒邮件的发送,无需额外配置。
安装与配置
将插件目录上传至
plugin/xiunext_transmail/在后台插件管理中安装并启用
进入插件设置页,填写以下信息:
在 ZeptoMail 中验证发件域名
创建 Mail Agent 并生成 Send Mail Token
填入发件人邮箱和 Token,选择托管区域
勾选"保存后发送测试邮件",验证配置是否正确
保存配置,插件即刻接管全站邮件发送
卸载说明: 卸载插件将自动清除所有配置数据,邮件发送恢复为系统原生 SMTP。
技术细节
零核心文件修改,完全通过 Hook 机制实现接管
model_inc_fileHook 将模型类注入编译缓存,避免运行时重复加载邮件发送成功后自动写入系统邮件日志(
xn_email_log_write)