Hello our valued visitor, We present you the best web solutions and high quality graphic designs with a lot of features. just login to your account and enjoy ...

Чем меньше мы заставляем пользователя заполнять полей при регистрации - тем выше конверсия. Но из-за ботов, пытающихся региться Но как быть с ботами которые регистрируются в наших магазинах? Ставить капчу?

А ведь есть простое и красивое решение. Что делают боты? Сабмитят нашу форму регистрации. Что делают разработчики чтобы нельзя было регистрироваться по прямой ссылке? Вводят в форму так называемое поле token со случайным именем. Решение - при отрисовки страницы у клиента мы должны вывести форму без поля токен (без нашего случайного имени). А вот после полной загрузки страницы (к этому моменту бот ее уже проглотил) мы скриптом создаем в форме наше поле токен. Точнее не создаем, а присваеваем ему правильное случайное имя. Предлагаю Вам реализацию для поледних Joomshopping и Virtuemart.

Для Joomshopping Version 4.15.0

Открываем файл шаблона страницы регистрации: /components/com_jshopping/templates/default/user/register.php (дефолтный шаблон, либо свой в шаблоне сайта). В конце файла находим и убираем:

echo JHtml::_('form.token');

Далее, в самом конце файла добавляем:

<script type="text/javascript">
    jQuery(document).ready(function() {
    jQuery("form.form-validate").append('<?php echo JHtml::_('form.token');?>');
 });
</script>

Сохраняем, наслаждаемся.

 

Для Virtuemart 3.0.18

Открываем файл шаблона страницы регистрации: /components/com_virtuemart/views/user/tmpl/edit.php (дефолтный шаблон, либо свой в шаблоне сайта). В конце файла находим и убираем:

echo JHtml::_('form.token');

Далее, в самом конце файла добавляем:

<script type="text/javascript">
    jQuery(document).ready(function() {
    jQuery("form.form-validate").append('<?php echo JHtml::_( 'form.token' ); ?>');
 });
</script>

Сохраняем.

Для com_contact (стандартная форма обратной связи)

Открываем файл шаблона страницы контактов: /components/com_contact/views/contact/tmpl/default_form.php (дефолтный шаблон, либо свой в шаблоне сайта). В конце файла находим и убираем:

echo JHtml::_('form.token');

Далее, в самом конце файла добавляем:

<script type="text/javascript">
    var parentElem = document.getElementById('contact-form');
    var elem = document.createElement("div");
    elem.innerHTML= ('<?php echo JHtml::_( 'form.token' ); ?>');
    parentElem.appendChild(elem);
</script>

Сохраняем.

Источник http://beagler.ru/joomla/captcha-eto-zlo-reshenie-dlya-joomshopping-i-virtuemart.html