Описание:
Простой, но очень эффективный хак для защиты от спама и сторонних ссылок в комментариях Вашего сайта. Зачастую посетители сайтов используют комментарии для распространения спама различных сайтов, что очень бесит администраторов сайта. Данный хак позволяет Вам установить проверку комментарии на наличие различных ссылок.
Суть защиты заключается в том, что при отправке комментария в базу данных производится проверка на наличие ссылок. В случае их обнаружения хак выдает диалоговое окно с сообщение о том, что в комментарий не будет опубликован пока в нем присутствуют ссылки.
Установка:
Для этого потребуется добавить часть кода в файл «/engine/modules/addcomments.php«. После строк:
if( $is_logged and ($member_id['restricted'] == 2 or $member_id['restricted'] == 3) ) {
$stop[] = $lang['news_info_3'];
$CN_HALT = TRUE;
}
Вам необходимо вписать следующую строку:
if( $member_id['user_group'] > 2){
if (preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['comments']) || preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['name']))
{
$stop[] = "Извините, публиковать ссылки в комментариях запрещено!";
$CN_HALT = TRUE;
}}
, где «$member_id[‘user_group’] > 2«
отвечает за группу пользователей, которым можно использовать ссылки. В нашем случае ссылки в комментариях разрешено добавлять администраторам и главным редакторам. Если вы захотите, чтобы и другие группы публиковали ссылки в комментариях, то измените ID групп пользователей.
Дополнительно:
Для большей эффективности хака необходимо непосредственно в /engine/modules/bbcode.php найти и удалить данные строки:
{$url_link}
{$image_link}
Что полностью исключит ввод ссылок в комментариях.
Рекомендуем: Установить интервал между добавлениями комментариев не меньше чем раз в 30 секунд, что защитит от флуда ( В админке: Настройки — Настройки комментариев — Защита от флуда ), а также настроить систему «Вопросы и ответы для защиты от спама»