erwane / cakephp-hcaptcha
CakePHP 的 HCaptcha 插件
1.1.1
2022-08-17 16:41 UTC
Requires
- php: ^7.2 | ^8.0
- ext-intl: *
- cakephp/cakephp: ^4.0
Requires (Dev)
- cakephp/cakephp-codesniffer: ^4.0
- php-parallel-lint/php-parallel-lint: ^1.0
- phpro/grumphp: ^v0.19 | ^v1.0
- phpunit/phpunit: ^8.0 | ^9.0
README
安装
使用 composer
composer require erwane/cakephp-hcaptcha
在您的 src/Application::bootstrap()
中加载插件
public function bootstrap(): void { $this->addPlugin('HCaptcha'); }
配置
在您的 config/app.php
中,插入以下默认值
// If you use .env file: 'HCaptcha' => [ 'key' => env('HCAPTCHA_KEY'), 'secret' => env('HCAPTCHA_SECRET'), ], // If you use config/app_local.php 'HCaptcha' => [ 'key' => null, 'secret' => null, ],
HCaptcha 密钥和密钥可以在您的 HCaptcha 控制台中找到
使用方法
在您的模板中
将验证码添加到您的表单中
<?= $this->Form->control('h-captcha-response', ['type' => 'hcaptcha']) ?>
您可以向 hCaptcha 传递选项。
<?= $this->Form->control('h-captcha-response', [ 'type' => 'hcaptcha', 'lang' => 'fr_FR', 'onload' => 'myFunction', 'render' => 'explicit', 'recaptchacompat' => false, ]) ?>
验证
在您的 Model
或 Form
验证中,添加 hCaptcha 验证提供程序并定义您的规则。
use Cake\Validation\Validator; public function validationDefault(Validator $validator): Validator { $validator->setProvider('HCaptcha', '\HCaptcha\Validation'); return parent::validationDefault($validator) ->add('h-captcha-response', 'hcaptcha', ['provider' => 'HCaptcha', 'rule' => 'hcaptcha']); }