Как на DLE запретить комментарии на латинице?

Проблема борьбы со спамом актуальна всегда, и если для WordPress с этим прекрасно справляется плагин Akismet, то защита сайтов на других cms вызывает сложности. Не помогает ни обязательная регистрация, ни премудрые капчи, ни запрет IP.

В этом посте я расскажу как защитить сайт на DLE от спам-комментариев на английском языке или на другом, использующем латинские буквы.

Итак, для установки запрета комментариев на латинице нужно подправить файл комментариев по адресу: engine/modules/addcomments.php

В нём ищем строку строку:

// Проверка защиты от флуда

И выше этой строки добавляем:

if( preg_match( '#[а-яА-Я]#i', $comments ) == false ) {
$stop[] = 'Комментарии на латинице запрещены!<br/>Comments on the Roman alphabet are forbidden!';
$CN_HALT = TRUE;
}

Таким образом устанавливается запрет на комментарии исключительно на латинице, но остается возможность в кириллическом тексте вставлять выдержки на латинице.

DLEseoкак сделать сайтхак