mmc/guestbook

一个提供多种防垃圾邮件机制的留言板插件

安装数: 1,031

依赖项: 0

建议者: 0

安全性: 0

类型:typo3-cms-extension

3.0.2 2023-12-08 19:50 UTC

This package is auto-updated.

Last update: 2024-09-20 01:50:14 UTC


README

它做什么?

这是一个基于TYPO3 extbase构建的留言板。它使用多种机制来防止垃圾邮件。

  • 蜜罐字段
  • 最小表单提交时间(防止垃圾邮件机器人)
  • 每个表单提交的唯一哈希值(防止垃圾邮件机器人重放,并使伪造时间戳成为不可能)
  • 表单HTML混淆(可在TS常量中禁用)
  • 安全提问:用户必须解决一个简单的随机加法(可在TS常量中禁用)
  • 新条目可以存储为隐藏,以便在发布前通过电子邮件进行编辑审查(可在TS常量中启用)
  • 新条目的电子邮件审查(可在TS常量中启用)。邮件中的链接允许决定帖子是否为垃圾邮件。
  • 阻止被标记为垃圾邮件的条目的IP(可在TS常量中禁用)
  • 如果使用“url”字段,则留言板列表视图中的链接将生成具有“rel”属性设置为“nofollow”的属性。这使得垃圾邮件变得无用,因为搜索引擎不会跟随链接。

留言板条目记录中可用的字段包括

  • 姓名
  • 地点(城市)
  • 电子邮件
  • 网址(访问者的网站)
  • 消息
  • 评论(编辑的评论)

此外,每个留言板条目还使用以下字段进行垃圾邮件预防

  • 是垃圾邮件:如果条目是垃圾邮件则选中
  • 远程IP:存储发帖者的IP
  • 帖子哈希:每个表单提交的唯一哈希值,将用于检测POST重放

默认情况下,标记为垃圾邮件的条目的IP将被阻止进一步发布。

配置参考

将扩展的静态模板包含到您的站点模板中

Typoscript常量

scrambleForm 混淆订阅表单HTML(防止垃圾邮件机器人)。表单将通过javascript写入DOM。默认选中。

blockSpamIps 忽略来自被标记为垃圾邮件的留言板条目的IP的帖子。

useMathTest 显示一个简单的随机生成的加法,用户必须解决以证明它是人类!

reviewNewEntries 对于每个新条目,将向编辑发送一封电子邮件,编辑可以决定帖子是否为垃圾邮件。邮件中的两个链接允许做出决定。您必须提供一个电子邮件地址才能使此功能正常工作(“reviewEmailAddress”)。

hideNewEntries 新条目将被存储为隐藏,此选项与“reviewNewEntries”选项结合使用最有意义。

pageSize 每页显示的留言板条目数。

reviewEmailAddress 发送新条目审查邮件的电子邮件地址。

reviewEmailSenderAddress 审查邮件的发送者地址。

reviewEmailSenderName 审查邮件的发送者名称。

reviewEmailSubject 审查邮件的主题。

minFormSubmissionTime 表单生成到提交之间必须经过的最小时间(毫秒)。人类通常无法在2秒内填写并提交表单,提供有意义的信息。垃圾邮件机器人可以。

secret 此字符串将用于生成表单和审查链接的哈希值。您应该将其更改为任何随机字符串,以使其对您的留言板唯一。

留言板条目存储

设置系统文件夹以存储留言板条目

  • TS常量“默认存储PID” [插件.tx_mmcguestbook.persistence.storagePid] 或
  • 在插件中(行为 > 记录存储页面)。

变更日志

3.0.2

代码清理;PSR一致性

3.0.1

错误修复

3.0.0

TYPO3 11 兼容性

2.0.4

修复composer.json

2.0.3

  • 修复版本不一致性
  • 将JS移动到页脚
  • 将文件名.ts重命名为.typoscript

2.0.2

错误修复:在Model中“$isSpam”默认值

2.0.1

错误修复(感谢Loek Hilgersom)

  • EntryController->getStandaloneView覆盖了TYPO3 10中的原始控制器上下文
  • 旧风格的TypoScript条件

2.0.0

将主版本更改为2(已弃用TYPO3 8支持)

1.3.6

升级jQuery核心到3.5.1
通过typoscript-setup包含js,使用includeJSLibs进行jQuery包含
错误修复:缺少包含jQuery的选项

1.3.5

修复ext_emconf.php

1.3.4

移除ext_emconf.php中的自动生成的注释

1.3.3

移除ext_icon.gif

1.3.2

移除.gitignore

1.3.1

修复Viewhelper ifHasErrors
修复sendReviewMail错误

1.3.0

TYPO3 9.5 / 10.4 兼容性

1.2.1

将constants.txt / setup.txt重命名为*.ts
constants.ts中的错误修复

1.2.0

Composer准备好的TYPO3版本约束 ^8.7

1.1.1

错误修复(默认值DomainModelEntry isSpam)

1.1.0

TYPO3 8 兼容性

1.0.3

小错误修复;感谢Ralf Klett

1.0.2

typoscript-setup中的多个视图路径,适用于TYPO3 7

1.0.1

TYPO3 7.6.xx 兼容性
将状态从'beta'更改为'stable'
错误修复:隐藏的条目在批准/标记为垃圾邮件时未找到

0.9.6

错误修复(表单被缓存)

0.9.5

增加了几个垃圾邮件保护功能

  • 阻止表单POST重放(垃圾邮件阻止器)
  • 最小表单提交时间(垃圾邮件阻止器)
  • 表单HTML混淆(垃圾邮件阻止器)
  • 安全问题(简单随机添加以解决)
  • 条目可以被标记为垃圾邮件 -> 阻止来自此IP的进一步帖子
  • 对每个新条目进行编辑性审查(通过电子邮件)

将[timestamp+random+secret]的哈希提交给表单。如果有效,该哈希将在服务器端检查并存储在新条目中,以防止POST重放。这样也无法伪造时间戳(用于检查表单提交时间)。

安全问题是简单添加,随机生成。结果与秘密哈希并提交给表单,然后与服务器端进行比较。还有客户端的js验证。

新条目可以立即发布,也可以首先隐藏存储。可以发送编辑性审查的电子邮件,审查者可以通过点击一个或另一个链接来决定帖子是否为垃圾邮件。这些链接也受到哈希的保护。如果新条目被隐藏存储,则如果决定“不是垃圾邮件”,现在将发布。如果标记为垃圾邮件,则将阻止来自其源IP的进一步帖子(可以在TS常量中禁用)。

服务器端表单验证

如果禁用了客户端验证,验证将完全在服务器端进行。要从表单中移除客户端验证,只需移除表单的“onsubmit”属性。