kmedia / silverstripe-recaptcha
使用 Google 的 reCAPTCHA 2 的反垃圾邮件保护扩展
dev-master
2021-03-11 20:52 UTC
Requires
- ext-curl: *
- ext-json: *
- silverstripe/framework: ^4.5
- silverstripe/spamprotection: ~3.0
- silverstripe/vendor-plugin: ^1.0
This package is auto-updated.
Last update: 2024-09-22 03:52:08 UTC
README
简介
提供一个 FormField,允许表单使用 Google 的 reCAPTCHA v2 服务验证非机器人提交。
需求
- SilverStripe 框架 4.0 或更高版本
安装
最佳安装方式是通过 composer。你也可以克隆仓库或下载 zip 文件,但你应该在 silverstripe 根目录下找到一个名为 recaptcha
的目录,其中包含所有文件。
使用 Composer
composer require kmedia/silverstripe-recaptcha
通过 composer 或手动安装模块后,你必须将垃圾邮件保护设置为 ReCaptchaProtector,这需要在你的网站配置文件中设置,通常这是 app/_config/mysite.yml
。
SilverStripe\SpamProtection\Extension\FormSpamProtectionExtension: default_spam_protector: Kmedia\ReCaptcha\ReCaptchaProtector
最后,将“垃圾邮件保护”字段添加到你的表单字段中。
配置
你必须在环境(.env
)文件中创建你的 sitekey
和 secretkey
,你可以从 reCAPTCHA 页面 获取这些配置选项。这些配置选项必须添加到你的网站 yaml 配置文件中,通常是 app/_config/mysite.yml
。
Kmedia\ReCaptcha\ReCaptchaField: theme: "light" #Default theme color (optional, light or dark, defaults to light) size: "normal" #Default size (optional, normal, compact or invisible, defaults to normal) badge: "bottomright" #Default badge position (bottomright, bottomleft or inline, defaults to bottomright)
添加字段标签
如果你想为 Captcha 字段添加字段标签或帮助文本,可以像这样操作
$form->enableSpamProtection() ->fields()->fieldByName('Captcha') ->setTitle("Spam protection") ->setDescription("Please tick the box to prove you're a human and help us stop spam.");