воскресенье, 16 октября 2011 г.

Social Engine 4 защита от спама, ReCaptcha

Если вас достали гребанные спам боты, а родная капча не спасает от них, боты ее легко пробивают, в отличии от людей, то хорошим решением будет установить ReCaptcha вместо обычной, темболее что движок ее поддерживает, странно что нет надстройки в админке, но делается все очень просто. Идем по ссылке https://www.google.com/recaptcha/admin/create  добавляем свой сайт и получаем ключи.
Далее открываем файлик application/modules/User/Form/Signup/Account.php в редакторе и ищем следующий код



if (Engine_Api::_()->getApi('settings', 'core')->core_spam_signup) {
   $this->addElement('captcha', 'captcha', array(
  'description' => '_CAPTCHA_DESCRIPTION',
  'captcha' => 'image',
  'required' => true,
  'allowEmpty' => false,
  'captchaOptions' => array(
    'wordLen' => 6,
    'fontSize' => '30',
    'timeout' => 300,
    'imgDir' => APPLICATION_PATH . '/public/temporary/',
    'imgUrl' => $this->getView()->baseUrl().'/public/temporary',
    'font' => APPLICATION_PATH . '/application/modules/Core/externals/fonts/arial.ttf'
  )));
 }
и меняем его на следующий

if (Engine_Api::_()->getApi('settings', 'core')->core_spam_signup) {
   $this->addElement('captcha', 'captcha', array(
  'description' => '_CAPTCHA_DESCRIPTION',
  'captcha' => 'reCaptcha',
  'required' => true,
  'allowEmpty' => false,
  'captchaOptions' => array(
    'pubKey' => 'Your Public Key',
    'privKey' => 'Your Private Key',  
    'wordLen' => 6,
    'fontSize' => '30',
    'timeout' => 300,
    'imgDir' => APPLICATION_PATH . '/public/temporary/',
    'imgUrl' => $this->getView()->baseUrl().'/public/temporary',
    'font' => APPLICATION_PATH . '/application/modules/Core/externals/fonts/arial.ttf'
  )));
 }
   
Только не забудьте вписать свои ключи, все теперь если у вас в админке включена капча формы регистрации то вы увидете ReCaptcha и злобные спам боты не будут вам надоедать

Комментариев нет:

Отправить комментарий