-9.x - возможность заработать и установить капчу систему защиты от разных спам программ, которую не может обойти даже такая матерая программа, как Хрумер. Тестирование система показала высокую надежность. Установка довольна простая и не зависит от движка. Причем, от частых перезагрузок страниц на вашем хостинге не будет создаваться нагрузка, а сам сервис KeyCaptcha работает бесперебойно. Все что вам надо пройти быстро регистрацию на их сайте, выбрать подходящую для вас защиту (их несколько), самая сложна и известная многим по форумам и ресурсам, собрать картинку, далее установить код в несколько файлах движка, вот и все.
Зарабатывать на рекламе и главное защитить свой портал от спама с помощью сервиса KeyCaptcha для
9.x - это капча картинка, которую нужно собрать, чтобы можно было добавить сообщение или пройти регистрацию. Для заработка достаточно 1000 раз, чтобы получить 10$, по заверению создателей системы часть деньги идут на благотворительность. Есть возможно управлять многими параметрами рекламы, например частотностью. Сама капча представлена несколькими вариантами, которую при желании вы можете активировать.
KeyCaptcha - система защити от ботов.
Шаги 2 и 3 выбираете под свое усмотрения.
На этом все KeyCaptcha для DLE 9.x установлена.
Заменить содержимое файла keycaptcha_install.xml
на
<?xml version="1.0"?>
<modification>
<id>dle</id>
<version>9.6</version>
</modification>
и поставить плагин по инструкции по установке.
Отредактировать файлы движка:
1. /engine/modules/addcomments.php
Заменить
if( $_REQUEST['sec_code'] != $_SESSION['sec_code_session'] or ! $_SESSION['sec_code_session'] ) {
$stop[] = $lang['news_err_30'];
$CN_HALT = TRUE;
}
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
if ( ( $user_group[$member_id['user_group']]['captcha'] ) && ( ! keycaptcha_check() ) ) {
$stop[] = $lang['news_err_30'];
$CN_HALT = TRUE;
}
2. /engine/modules/addnews.php
Заменить
elseif( $_REQUEST['sec_code'] != $_SESSION['sec_code_session'] OR !$_SESSION['sec_code_session'] ) $stop .= "<li>" . $lang['news_err_30'] . "</li>";
на
else {
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
if ( ( $user_group[$member_id['user_group']]['news_sec_code'] ) && ( ! keycaptcha_check() ) ) {
$stop .= "<li>" . $lang['news_err_30'] . "</li>";
}
}
Заменить
$path = parse_url( $config['http_home_url'] );
$tpl->set( '{sec_code}', "<span id="dle-captcha"><img src="" . $path['path'] . "engine/modules/antibot.php" alt="${lang['sec_image']}" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a></span>" );
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
$tpl->set( '{sec_code}', keycaptcha_show() );
3 /engine/modules/feedback.php
Заменить
if( $_POST['sec_code'] != $_SESSION['sec_code_session'] OR ! $_SESSION['sec_code_session'] ) {
$stop .= $lang['reg_err_19'];
}
на
if ( ! keycaptcha_check() ) {
$stop .= $lang['reg_err_19'];
}
Заменить
$tpl->set( '{code}', "<span id="dle-captcha"><img src="" . $path['path'] . "engine/modules/antibot.php" alt="{$lang['sec_image']}" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a></span>" )
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
$tpl->set( '{code}', keycaptcha_show() );
4 /engine/modules/lostpassword.php
Заменить
if( $_POST['sec_code'] != $_SESSION['sec_code_session'] or ! $_SESSION['sec_code_session'] ) {
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
if ( ! keycaptcha_check() ) {
заменить
$tpl->set( '{code}', "<span id="dle-captcha"><img src="" . $path['path'] . "engine/modules/antibot.php" alt="{$lang['sec_image']}" border="0" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a></span>" );
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
$tpl->set( '{code}', keycaptcha_show() );
5 /engine/modules/pm.php
Заменить
$path = parse_url( $config['http_home_url'] );
$tpl->set( '{sec_code}', "<span id="dle-captcha"><img src="" . $path['path'] . "engine/modules/antibot.php" alt="${lang['sec_image']}" border="0" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a></span>" );
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
$tpl->set( '{sec_code}', keycaptcha_show() );
6. /engine/modules/register.php
Заменить
if( $sec_code != $sec_code_session or ! $sec_code_session ) $stop .= $lang['reg_err_19'];
на
if (1==1){}
заменить
$tpl->set( '{reg_code}', "<span id="dle-captcha"><img src="" . $path['path'] . "engine/modules/antibot.php" alt="{$lang['sec_image']}" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a></span>" );
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
$tpl->set( '{reg_code}', keycaptcha_show() );
заменить
$reg_error = check_reg( $name, $email, $password1, $password2, $sec_code, $sec_code_session );
на
$reg_error = check_reg( $name, $email, $password1, $password2, $sec_code, $sec_code_session );
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
if ( ! keycaptcha_check() ) $reg_error .= $lang['reg_err_19'];
7. /engine/modules/show.full.php
Заменить
$path = parse_url( $config['http_home_url'] );
$tpl->set( '{sec_code}', "<span id="dle-captcha"><img src="" . $path['path'] . "engine/modules/antibot.php" alt="${lang['sec_image']}" /><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a></span>" );
на
include_once ENGINE_DIR . '/modules/keycaptcha_dle.php';
$tpl->set( '{sec_code}', keycaptcha_show() );
Правка шаблонов:
1. Файл вашего шаблона в форме Регистрации registration.tpl:
1.1 Заменить
[sec_code]...[/sec_code]
на
[sec_code]<tr><td colspan=2>Выполните задание:{reg_code} </td></tr>[/sec_code]
1.2 В код кнопки отправки
<button name="submit" class="fbutton" type="submit"><span>Отправить</span></button>
так как оформление может быть разным, необходимо просто добавить id:
<button id="reg_sub"...
2. Файл вашего шаблона форме Добавления комментария addcomments.tpl:
2.1 Заменить
[sec_code]...[/sec_code]
на
[sec_code]<tr><td colspan=2>Выполните задание:{sec_code} </td></tr>[/sec_code]
2.2 В код кнопки отправки
<button type="submit" name="submit" class="fbutton"><span>[not-aviable=comments]Добавить[/not-aviable][aviable=comments]Изменить[/aviable]</span></button>
так как оформление может быть разным, необходимо просто добавить id:
<button id="com_sub" ...
3. Файл вашего шаблона в форме Восстановления пароля lostpassword.tpl:
3.1 Заменить
<tr>
<td class="label">
Введите код<br />с картинки:<span class="impot">*</span>
</td>
<td>
<div>{code}</div>
<div><input class="f_input" style="width:115px" maxlength="45" name="sec_code" size="14" /></div>
</td>
</tr>
на
<tr><td colspan=2>Выполните задание:{code} </td></tr>
3.2 В код кнопки отправки
<button name="submit" class="fbutton" type="submit"><span>Отправить</span></button>
тоже самое только добавить id:
<button id="lost_sub" ...
4. Файл вашего шаблона в форме Добавления новостей addnews.tpl:
4.1 Заменить
[sec_code] ... [/sec_code]
на
[sec_code]<tr><td colspan=2>Выполните задание:{sec_code} </td></tr>[/sec_code]
4.2 В код кнопки отправки
<button name="add" class="fbutton" type="submit"><span>Отправить</span></button>
тоже самое только добавить id:
<button id="news_sub" ...
5. Файл вашего шаблона Обратной связи feedback.tpl:
5.1 Заменить
[sec_code] ... [/sec_code]
на
[sec_code]<tr><td colspan=2>Выполните задание:{code} </td></tr>[/sec_code]
5.2 В код кнопки отправки
<button name="send_btn" class="fbutton" type="submit"><span>Отправить</span></button>
тоже самое только добавить id:
<button id="feed_sub"...
6. Файл вашего шаблона Персональных сообщений pm.tpl:
6.1 Заменить
[sec_code] ... [/sec_code]
на
[sec_code]<tr><td colspan=2>Выполните задание:{sec_code} </td></tr>[/sec_code]
6.2 В код кнопки отправки
<button type="submit" name="add" class="fbutton"><span>Отправить</span></button>
тоже самое только добавить id:
<button id="pm_sub"...
На этом все!
! После установки вам нужно будет вручную внести изменения в свой шаблон! И все готово.