SERGIOIGLESIAS

Blog sobre Joomla

Cómo integrar plugin reCaptcha de Google en un componente Joomla

@sergiois Tips Joomla 1 - 2 minutos Visto: 5159

Con la nueva versión de Joomla se ha integrado la versión 2 de reCAPTCHA para prevenir el acceso de robots de SPAM.

En algunas extensiones lo tenemos integrado de forma nativa, por lo que podemos utilizarlo.

En este artículo te voy a explicar cómo integrarlo en el desarrollo de una nueva extensión.

Vamos a ver los pasos a seguir.

Pasos para integrar el plugin de reCaptcha en un componente Joomla

1/ Vista del componente

En la vista de nuestro componente, com_componente/views/vista/tmpl/default.php añadimos las siguientes líneas de código en el sitio donde queramos que se muestre el Captcha:

Código PHP:

JPluginHelper::importPlugin('captcha');
$dispatcher = JDispatcher::getInstance();
$dispatcher->trigger('onInit','caparecaptcha');
  • Con la primera línea importamos el plugin Captcha de Joomla.
  • Con la segunda creamos una nueva instancia de ese plugin.
  • Con la tercera lanzamos el disparador. Para ello tenemos que poner un identificador (en este caso "caparecaptcha").

Código HTML:

  • Con esta línea creamos un div con un id que se llame igual que el identicicador anterior. Aquí es donde se mostrará el Captcha de Goolge.

recaptcha joomla vista

2/ Model del componente

En el modelo, para validar que se ha introducido correctamente los caracteres que nos solicita el Captcha, tenemos que añadir las siguientes líneas de código:

JPluginHelper::importPlugin('captcha');
$dispatcher = JEventDispatcher::getInstance();
$res = $dispatcher->trigger('onCheckAnswer',$datos['recaptcha_response_field']);
if(!$res[0]){ return ERROR; }
  • Con la primera línea importamos el plugin Captcha de Joomla.
  • Con la segunda cogemos el evento de ese plugin.
  • Con la tercera recogemos el resultado pasándole al "trigger" el dato correspondiente que se ha introducido en la vista.
  • Con la cuarta hacemos un "if" para saber si es correcto o no.

De esta forma tan sencilla tenemos integrado el plugin de Captcha en un componente para Joomla

Espero que os haya resultado sencillo este tip para Joomla!. Cualquier comentario ya sabéis que es bienvenido.

¿Te ha gustado el artículo?

Suscríbete a mi newsletter y recibe contenido exclusivo.
Podrás hacer gratis un Curso de desarrollo de plantillas Joomla.

Un comentario

Solicita presupuesto

¿Quieres una página web que funcione?

Contacta conmigo y hablemos de tu proyecto.