jordanmkoncz / silverstripe-memberemailverification
为成员添加电子邮件验证功能
Requires
- silverstripe/framework: ~3.1
This package is not auto-updated.
Last update: 2024-09-14 19:47:29 UTC
README
此模块修改了注册/登录过程,以便成员在登录之前必须验证其电子邮件地址。
功能
- 无需配置即可直接使用
- 支持国际化
- 与自定义注册表单和其他第三方模块(例如 silverstripe/forum)协同工作
- 所有模板和字符串都易于覆盖
关于
此模块向 Member
DataObject
添加了以下属性
已验证
验证字符串
验证电子邮件发送
在创建新成员时,将为成员分配一个唯一的 VerificationString
并发送包含验证链接的电子邮件。用户必须访问验证电子邮件中发送的验证链接,才能登录。在访问验证链接后,Validated
将为 Member
记录设置为 true,用户将被允许登录到网站。
如果用户丢失或删除了他们的验证电子邮件,他们可以通过添加到登录表单的表单操作来重新发送。
要求
- SilverStripe 3.1 或更高版本
安装
composer require "jordanmkoncz/silverstripe-memberemailverification"
自定义
所有文本字符串都可以覆盖。要覆盖英文文本字符串,创建或修改您的 mysite/lang/en.yml
文件,并覆盖此模块的 lang/en.yml
文件中的值。要覆盖其他语言的字符串,请在您的 mysite/lang
文件夹中添加其他语言。
验证电子邮件的模板也可以覆盖。只需在您主题的 templates/email
文件夹(注意小写“e”)中创建一个名为 VerificationEmail.ss
的文件。在此模板中,您可以访问 Member
对象、SiteConfig
对象,当然还有用户必须访问以验证其电子邮件的 ValidationLink
。
如果需要,也可以覆盖 Security 扩展中所有控制器动作的模板。每个控制器动作都有一个它将使用的模板名称,如果存在,则回退到使用 Security
模板。例如,要覆盖 Security
verify_email
动作的模板,只需在您的主题的 templates/Layout
文件夹中创建一个名为 Security_verify_email.ss
的文件。
示例项目
您可以在 jordanmkoncz/silverstripe-memberemailverification-example 中查看使用此模块的示例项目。
鸣谢
此模块受到了 exadium/silverstripe-module-email-verified-member 模块的启发。它被创建来提供相同的成员电子邮件验证功能,但没有不必要的成员审核功能,并且有更干净、更易于理解的代码,更容易定制。