Недавно пришлось столкнутся с проблемой спам комментариев в DLE. В стандартной сборке dle и стандартными настройками. Любой желающий мог оставить ссылки в трёх местах!: в профиле о себе, в подписи, которая будет выводится к любой новости где спамер оставит коммент и собственно в самой новости путём тегов dle.
Порыскав по рунету, самым лучшим решением нашёл этот способ:
1) Установка:Открываем файл engine\modules\addcomments.php и находим там
if( dle_strlen( $name, $config['charset'] ) > 50 ) {
$stop[] = $lang['news_err_1'];
$CN_HALT = TRUE;
}
Ниже добавляем этот код:/*******************************************************************
Хак антилинк, защита от спама в комментариях DLE by Softdle.com
*******************************************************************/
if (preg_match ("/href|url|https|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['comments']) || preg_match ("/href|url|https|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['name']))
{
$stop[] = "URL адреса сайтов в комментариях публиковать ЗАПРЕЩЕНО! Антиспам. ";
$CN_HALT = TRUE;
}
/*******************************************************************
[End] Хак антилинк, защита от спама в комментариях DLE by Softdle.com
*******************************************************************/
Всё. Теперь в самих комментариях ссылки не пролезут. Теперь осталось сделать так чтоб в профилях и подписи не было ссылок.
Благо в новых версиях DLE это уже организованно, только вот почему то включить забыли.
Вам нужно лишь к вашей группе пользователей. Например Пользователи - запретить публикацию ссылоку в профилях о себе и подписи.
Ну а для 100% гарантии чтоб ниодной внешней ссылки у вас не было на сайте, рекомендуем установить скрипт редиректа на dle, либо модуль Smart Leech