分页: 1 / 1

Subscribe邮箱订阅插件

发表于 : 2025年 10月 15日 03:02
寒士杰克
前言

第一款插件很不理想:
GitHub
TGU-HansJack/Typecho-MailPulse
点击查看项目 · 在新窗口打开
StarsForks

MailPulse 是一款用于 Typecho 博客的邮件推送订阅插件,旨在通过电子邮件通知订阅用户有关新文章发布的信息。该插件允许用户配置 SMTP 服务器设置,以便顺利发送电子邮件,同时支持基本的邮件模板定制。
功能如下:
1. 订阅推送:支持他人提供邮箱订阅文章更新,用户将邮箱填于插件设置,发布新文章时按设置推送给对应邮箱。
2. SMTP设置:可在插件中对SMTP进行相关设置。
3. 推送间隔:能自定义推送时间间隔,设为0则立即推送。
4. 邮件设置:涵盖推送邮件设置与邮件模板设置,模板初始为默认,可在插件中修改。
5. 推荐文章:可选择是否推送推荐文章内容,能填写推荐文章的cid。

第二款插件违背了目标:
RssMailer,使用Rss抓取方式定时抓取文章通过邮件推送给订阅者。
功能如下:
1. SMTP邮件发送,支持各种SMTP服务器配置
2. RSS/Atom抓取,使用SimplePie库抓取RSS源
3. 订阅者管理,完整的订阅者增删改查功能
4. 邮件模板自定义,支持HTML邮件模板和变量替换
5. ~~定时任务,支持cron定时执行和Web触发~~
6. ~~缓存机制,避免重复发送,提高性能~~

第三款插件就是 Subscribe (订阅):
GitHub
TGU-HansJack/Typecho-Subscribe-Plugin
点击查看项目 · 在新窗口打开
StarsForks

Subscribe: 一个简洁高效的 Typecho 文章邮箱订阅插件,支持前端订阅、邮件退订、文章推送。
功能如下:
1. 手动文章推送:灵活选择文章和订阅者,支持批量发送和自定义标题
2. 订阅者管理:增删改查订阅者,状态切换,批量操作,分页浏览
3. 响应式邮件模板:精美现代化设计,多端兼容,自动退订链接
4. 数据可视化统计:ECharts趋势图表,关键指标卡片,实时数据更新
5. ~~发送记录追踪:完整发送日志,状态监控,错误信息记录~~
6. SMTP邮件配置:支持邮件服务,TLS/SSL加密,自定义发件人
7. 前端订阅集成:自助订阅表单,邮箱提醒,一键退订
8. 安全防护机制:Token验证,SQL注入防护,重复邮箱检测
9. 响应式管理界面 - 现代化后台设计,移动端适配,直观操作体验

图片
图片
图片
图片

额外功能(需要联系博主发给你):
10. 前端展示列表:

代码: 全选

<iframe src="/usr/plugins/Subscribe/Leaderboard.php?action=leaderboard&limit=20&theme=card" width="100%" height="600" frameborder="0" style="border-radius: 8px;"></iframe>
使用教程

安装配置
1. 将插件文件上传到 `usr/plugins/Subscribe/` 目录
2. 在后台「插件管理」中激活插件
3. 点击「设置」配置 SMTP 服务器信息

添加订阅者
1. 进入「文章订阅」管理页面
2. 点击「订阅者管理」标签
3. 点击「添加订阅者」按钮手动添加
4. 或者在前端页面添加订阅表单供用户自助订阅

发送邮件
1. 切换到「发送邮件」标签
2. 在左侧选择要推送的文章(可多选)
3. 在右侧选择接收邮件的订阅者
4. 可选填写自定义邮件标题
5. 点击「发送邮件」完成推送

查看统计
- 「发送记录」查看历史推送记录
- 首页图表显示订阅者趋势
- 统计卡片显示关键数据

前端订阅表单
在主题模板中添加以下代码:

代码: 全选

<!-- 在文章末尾添加订阅表单 -->
<div class="post-subscribe">
    <div class="subscribe-form-container"></div>
</div>
</article>

代码: 全选

<?php
// 在 </head> 标签前添加
$options = Helper::options();
$pluginUrl = $options->pluginUrl . '/Subscribe';
?>

<!-- 订阅表单样式 -->
<link rel="stylesheet" href="<?php echo $pluginUrl; ?>/assets/subscribe-form.css">

代码: 全选

<?php
// 在 </body> 标签前添加
$options = Helper::options();
$pluginUrl = $options->pluginUrl . '/Subscribe';
?>

<!-- 订阅表单脚本 -->
<script src="<?php echo $pluginUrl; ?>/assets/subscribe-form.js"></script>
测试链接:

代码: 全选

网站链接?subscribe=1
比如:

代码: 全选

<a href="./?subscribe=1">点击订阅本站</a>
其他版本只在这更新
版本号:20250817

1. 取消前端展示,修改新样式,添加文章分类选择:
图片

2. 修改后端样式,添加可拖拽排版:
图片

3. 添加订阅成功邮件模板的设置:
图片

使用说明:

代码: 全选

<?php if (class_exists('Subscribe_Plugin')): ?>
    <?php Subscribe_Plugin::subscribeForm(); ?>
<?php endif; ?>
其他页面需要添加js、css引用,具体参考上一版本。

结语

Typecho 邮件订阅插件演进路线:

MailPulse(插件1)
- 缺乏前端订阅
- 模板简陋
- 无用户交互
→ 被快速淘汰

RssMailer(插件2)
- 使用SimplePie抓取RSS
- 支持缓存/日志/定时
- 功能复杂偏离目标
- 无法选择文章/订阅者
→ 偏向RSS聚合器

Subscribe(插件3)
- ✅ 手动选择文章/订阅者
- ✅ SMTP邮件配置
- ✅ 自定义HTML模板
- ✅ 响应式前端订阅表单
- ✅ 一键退订
- ✅ ECharts可视化统计
- ✅ 安全防护机制
- ✂ 舍弃RSS聚合与日志
→ 聚焦“人→文章→推送”