Search code examples
joomlarecaptchajoomla2.5

How to use Joomla recaptcha plugin with my custom module?


I have created a custom module for my contactus form. Now I want to use Joomla recaptcha plugin with this module.

Any idea how to get this done?


Solution

  • In order to use joomla default recaptcha plugin follow these steps-

    1)Get recaptcha keys from http://www.google.com/recaptcha

    2)Set these keys to recaptcha plugin and activate it if it's not.

    3)Put below code where you want to show recaptcha

    //php code
    JPluginHelper::importPlugin('captcha');
    $dispatcher = JDispatcher::getInstance();
    $dispatcher->trigger('onInit','dynamic_recaptcha_1');
    
    //html code inside form tag
    <div id="dynamic_recaptcha_1"></div>
    

    4)Put this code where you validating/processing the form

    $post = JRequest::get('post');      
    JPluginHelper::importPlugin('captcha');
    $dispatcher = JDispatcher::getInstance();
    $res = $dispatcher->trigger('onCheckAnswer',$post['recaptcha_response_field']);
    if(!$res[0]){
        die('Invalid Captcha');
    }
    

    //For Joomla 3.x

    $post = JFactory::getApplication()->input->post;
    $dispatcher = JEventDispatcher::getInstance();