6 комментариев

avatar
Каптчу стандартную меняй на ReCapthca, стандартная не помогает, её роботы умеют «читать»
  • ff00
  • 0
avatar
Спасибо! А мануалов по данному вопросу нет? Мож кто менял?
avatar
Чтобы получилась такая ReCaptcha:
ReCaptcha

Регистрируешся тут: www.google.com/recaptcha/intro/

В header.tpl добавляешь в блоке head добавляешь
{if !$oUserCurrent}<script src='https://www.google.com/recaptcha/api.js'></script>{/if}


В том поле где у тебя стояла каптча, вместо каптчи пишешь:
<div class="g-recaptcha" data-sitekey="RECAPTCHA_PUBLIC_KEY"></div>


Где RECAPTCHA_PUBLIC_KEY — твой публичный ключ рекаптчи

В \engine\modules\validate\entity\ValidatorCaptcha.entity.class.php дописываешь функцию:
public function validateCaptcha() {
	$validateCaptcha = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret=RECAPTCHA_SECRET_KEY&response='.$_POST["g-recaptcha-response"].'&remoteip='.$_SERVER['REMOTE_ADDR']);
	$validateCaptcha = json_decode($validateCaptcha);
	if(!$validateCaptcha->success) return false;
	return $validateCaptcha->success;
}


Где RECAPTCHA_SECRET_KEY — твой секретный ключ рекаптчи

В этом же файле в функцию validate, в проверку условия:
if (!isset($_SESSION['captcha_keystring']) || $_SESSION['captcha_keystring'] != strtolower($sValue))


до return, вписать:
if($this->validateCaptcha()) return true;


P.S. кому нужен плагин ГО ТО ФРИЛАНСЕРС job.livestreetcms.com к примеру Chiffa сделает за 3.5 минуты
  • ff00
  • +3
avatar
Отлично. А можете подсказать как подчистить модуль от старой капчи. Где выводиться я нашел, убираю код, при добавлении комментария все равно ругается на капчу.
avatar
Может в Вашем случае где-то в плагине идёт проверка каптчи
avatar
В каталоге вроде есть плагин, но я не тестил…
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.