Symfony2 Bundle for Google reCaptcha v2. It provides a form type to include in your forms and a specific validator.
Install with composer :
composer require pierre-vassoilles/recaptcha-bundle
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new Pv\RecaptchaBundle\PvRecaptchaBundle(),
// ...
);
}
Add the following line to your config.yml
:
# app/config/config.yml
# Include the recaptcha widget
twig:
form:
resources:
# ...
- 'PvRecaptchaBundle:Form:recaptcha_widget.html.twig'
# ...
# Recaptcha Configuration
pv_recaptcha:
recaptcha_public_key: 'your-public-key'
recaptcha_private_key: 'your-private-key'
Add the following code to your form class :
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
// ...
->add('recaptcha', 'pv_recaptcha', array(
'label' => 'Your label',
'mapped' => false,
))
// ...
;
}
Then, display the widget in your twig view like
{{ form_label(form.recaptcha) }}
{{ form_widget(form.recaptcha) }}
{{ form_errors(form.recaptcha) }}
Add the following code to your form class :
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
// ...
->add('recaptcha', 'pv_recaptcha', array(
'label' => false,
'mapped' => false,
'invisible' => true,
'form_id' => 'your-form-element-id'
))
// ...
;
}
- Create a tag