登录提醒

登录提醒

用户登录成功后自动发送邮件提醒,支持个人中心开关、自定义模板、频率限制

插件 v1.0.10 Twelve 用户 safe 付费 5 金币

xnx_login_alert 登录提醒

功能

  • 用户登录成功后自动发送邮件提醒,邮件包含:用户名、登录时间、IP 地址、浏览器、操作系统

  • 个人中心开关:用户可在安全设置页自主开启/关闭

  • 管理员后台配置:全局开关、用户默认开关、邮件模板(支持变量替换)、频率限制

  • 频率限制:同 IP 重复登录时按配置间隔(分钟)限流,不同 IP 始终发送

  • 模板变量:{username}, {time}, {ip}, {location}, {browser}, {site_name}, {site_url}

  • 使用系统异步邮件发送(xn_send_mail_async),不阻塞登录流程

  • 用户记录存储于 xnx_login_alert_user 表,记录开关状态和最后发送 IP/时间

文件结构

plugin/xnx_login_alert/
├── conf.json
├── install.php / uninstall.php        # 建 xnx_login_alert_user 表
├── setting.php                        # 后台配置 + 邮件预览
├── update.md
├── model/
│   └── LoginAlertService.php          # 核心服务
├── admin/view/htm/
│   └── login_alert_admin.htm          # 后台配置页
└── hook/
    ├── model_inc_file.php             # 自动加载 Service
    ├── user_login_post_end.php        # 登录后触发 sendLoginAlert
    ├── my_action_before.php           # 个人中心入口
    ├── my_security_end.htm            # 安全设置页开关 UI
    └── ...

配置流程

  1. 后台「插件管理」启用 xnx_login_alert

  2. 进入「插件设置」→ 配置全局开关、默认开关、邮件模板、频率限制

  3. 用户登录后自动收到邮件(需确保 SMTP 已配置)

  4. 用户可在「个人中心 → 安全设置」关闭提醒

扩展说明

LoginAlertService 为纯静态类,通过 hook/model_inc_file.php 自动加载。

Service 类方法

LoginAlertService::getSettings(): array
LoginAlertService::getUserSetting(int $uid): array
LoginAlertService::saveUserSetting(int $uid, int $enabled): void
LoginAlertService::sendLoginAlert(array $user): void    # 主入口,hook 调用
LoginAlertService::checkFrequency(int $uid, string $ip): bool
LoginAlertService::replaceVariables(string $template, array $data): string
LoginAlertService::getBrowserSummary(string $ua): string
LoginAlertService::getClientIp(): string

触发时机

  • user_login_post_end.php:用户登录成功后自动调用 sendLoginAlert()

  • 检查顺序:全局开关 → 用户开关 → 频率限制 → 发送邮件 → 更新记录

版本 1.0.0 | 兼容 Xiuno 1.1+


截图 1
v1.0.10 2026-08-06
优化邮件模板格式化的问题
v1.0.0 2026-08-03
作者信息
XiunoX 开发者,独立开发者 & 全栈工程师 DiscuzX 插件/模板、WordPress 主题/插件、XiunoX 框架二次开发、APP 与小程序自研项目。
开发者主页
38
应用
82
安装
2026-08
加入
应用详情
应用分类 插件
版本 v1.0.10
适用版本 1.1
开发者 Twelve
下载量 0
浏览 20
更新时间 2026-08-06
发布时间 2026-08-03
最新回复 2
查看全部
  • 一粒尘埃 一级用户组
    这是啥 插件。。。。
    23小时前
  • Laity 一级用户组
    刚收到了邮箱登陆通知全是源代码🤔
    1天前
查看全部评论 / 发表评论
完整评论功能在讨论帖中,点击前往