Решаем проблему со спамом с сайта на modx revolution

09.08.2018

Если в modx revolution с формы контактов стал приходить спам, то подойдет такое решение.

Внимание! Способ подходит если форма сделана через FromIt.

  • Добавляем на форму JavaScript

     
    
    $(function() {
        $('#formName').append('<input type="text" name="soorg" value="1489" style="visability:hidden; height: 0; width: 0; padding: 0; border:none;" />');
    });
    
    

    formName - ID нужной формы

  • Создаем снипет, например sovalidate

     
    getValue('soorg')!='1489'){
                $modx->log(xPDO::LOG_LEVEL_ERROR, 'Ошибка заполнения формы: не пустое поле антиспама');
                $modx->log(xPDO::LOG_LEVEL_ERROR, print_r($_POST, 1));
                text_error();
        }else{
            return true;
        }
    }else{
        $modx->log(xPDO::LOG_LEVEL_ERROR, 'Ошибка заполнения формы: нет поля антиспама');
        $modx->log(xPDO::LOG_LEVEL_ERROR, print_r($_POST, 1));
        text_error();
    }
    

  • При вызове формы добавляем sovalidate

     
    
    &hooks=`sovalidate, email, FormItSaveForm`
    


Категории: MODx
Яндекс.Метрика