Отзывы о товаре, помогают как покупателям — определится с выбором.
Но часто отзывы о товарах — «засыпают» спамом. Для защиты от спама — обычно используют Captcha (
Есть хорошее решение от Google —
Добавить в Magento — Captcha к форме отзывов о товаре
Сделаем правки в файл-шаблон Magento, формы отзывов о товаре:
app/design/frontend/rwd/default/template/review/form.phtml
Перед тегом <form>, вставим JavaScript:
<script type="text/javascript"> var onloadCallback = function () { grecaptcha.render('recaptcha_html_element', { 'sitekey': 'my_sitekey' }); }; </script> <script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl=ru" async defer></script>
my_sitekey — это ключ, который необходимо получить на сайте
В форме отзывов, вставим HTML:
<div id="recaptcha_html_element"></div> <input type="hidden" name="validate_recaptcha" class="validate-recaptcha" value="" />
validate_recaptcha — поле для проверки ввода капчи
Далее, находим блок кода JavaScript:
var dataForm = new VarienForm('review-form');
И вставим чуть ниже JavaScript — для обработки проверки Captcha в формах Magento:
Validation.addAllThese( [ ['validate-recaptcha', '<?php echo $this->__('Please check the Magento CAPTCHA code. It\'s not correct.') ?>', function(v) { var error = 1; var v = grecaptcha.getResponse(); if (v.length === 0) { error = 1; } else { // checked error = 0; } if (error == 1) { return false; } else { error = 1; } return true; }] ] );
Должно работать
Осталось только добавить перевод — Please check the Magento CAPTCHA code
Следует заметить, в некоторых случаях — Капча, может навредить сайту — если посетители сайта старшей или младшей возрастной категории, посетителям иногда может быть трудно «ответить» на вопросы капчи.