contaobayern/contao-ertl-bundle

Contao CMS 的电子邮件注册 + 令牌登录

安装: 4

依赖项: 0

建议者: 0

安全: 0

星星: 0

监视者: 5

分支: 0

类型:contao-bundle

dev-main / 1.0.x-dev 2023-03-17 10:13 UTC

This package is auto-updated.

Last update: 2024-09-17 13:06:49 UTC


README

电子邮件注册 + 令牌登录

安装包后的要求

在 config/parameters.yml 中添加参数

config/parameters.yml 文件中添加该包所需的参数

parameters:
    # Parameter aus der Contao Installation
    database_host: ...
    database_port: ...
    database_user: ...
    database_password: ...
    database_name: ...
    secret: ...
    # Parameter für das Bundle (Beispiele)
    ertl_assign_groups.example.com: [1,2,3]
    ertl_assign_groups.example.org: [1,4]
    # Optionale Parameter: 
    # Gültigkeitsdauer eines Tokens (im Bsp.: 14 Tage; Default wäre 7 Tage).    
    ertl_token_lifetime: 1209600
    # E-Mails-Adressen bestimmter Domains nicht akzeptieren
    # (es erscheint eine entsprechenden Fehlermeldung im Registrierungsformular) 
    ertl_rejected_domains:
        - t-online.de
        - web.de
        - gmail.com

创建错误页面

当使用无效令牌尝试登录失败时,根据情况将用户重定向到相应的错误页面。应在页面树中存在 401 "未认证",403 "访问被拒绝" 和 404 "未找到" 页面。

表单

表单必须至少有一个名为 "E-Mail-Adresse" 的输入字段!

其他字段将在创建要登录的成员时被继承,前提是它们的名称与成员表 tl_member 中的列名相对应。例如:(firstname, lastname)

为了识别表单,必须创建一个具有 ertl_login 名称和 9uetwrg7K83z7 值的隐藏表单字段。

令牌登录的重定向页面通过登录链接控制

https://example.com/_login/<token>/<id der Seite zu der weitergeleitet werden soll>

要重定向的页面的 <id> 通过一个名为 redirecttopagewithid 的隐藏表单字段确定。相应的值是所需页面的 ID。如果此字段不存在,则将重定向到主页。提示:如果需要将用户重定向到表单所在的页面,则可以使用插入标签 {{page::id}}

通知

为了用户能够收到登录链接,必须在通知中心创建一个类型为 "ER+TL 注册" 的通知。在这里,可以通过简单的令牌访问表单数据(特别是 ##form_email## 用于电子邮件的接收者)。登录链接通过简单的令牌 ##loginlink## 提供。

电子邮件文本的示例

Hallo ##form_firstname## ##form_lastname##

Dein Loginlink für ##domain## lautet 

##loginlink##

特性

  • 删除成员时,将删除相关的 tl_member_login_token 记录
  • 如果成员在后台被禁用,则阻止登录(如果使用相关的登录链接,则用户将收到 403 错误)

待办事项

计划任务

  • 通过即将创建的 contao-console 命令 "清除" tl_membertl_member_token