fumofuuu
Мой дом здесь!
- Регистрация
- 24 Сен 2011
- Сообщения
- 334
- Реакции
- 264
- Автор темы
- #1

Для того, чтобы полностью и правильно поменять адрес странички регистрации с, например, http://домен/?do=register на http://домен/?do=my_reg, необходимо произвести такие изменения в файлах DLE:
Автор: ZEOS.IN
Кому нужна админка: by vitnet
Открываем engine/inc/options.php находим:
PHP:
showRow( $lang['opt_sys_ut'], $lang['opt_sys_utd'], makeDropDown( array ("0" => $lang['opt_sys_reg'], "1" => $lang['opt_sys_reg_1'] ), "save_con[registration_type]", "{$config['registration_type']}" ) );
Ниже прописываем:
PHP:
showRow( "Ссылка на страницу регистрации", "Укажите желаемое имя страницы регистрации", "<input class=\"edit bk\" type=text style=\"text-align: center;\" name='save_con[register]' value=\"{$config['register']}\" size=10>" );
То что надо изменить ещё:
Код:
Изменяем адрес странички регистрации | Временно избавляемся от массовой регистрации ботов и спама
Для того, чтобы полностью и правильно поменять адрес странички регистрации с, например, http://домен/?do=register на http://домен/?do=my_reg, необходимо произвести такие изменения в файлах DLE:
1) Открыть файл: /engine/data/config.php и в массив $config в самом низу добавить: 'register' => "my_reg",
Было
...
'rss_number' => "10",
'rss_format' => "1",
'version_id' => "9.7",
);
?>
Стало
...
'rss_number' => "10",
'rss_format' => "1",
'version_id' => "9.7",
'register' => "my_reg",
);
?>
Вместо слова "my_reg" используйте любое другое слово (оно должно быть уникальным для вашего сайта).
2) В файле /engine/init.php найти строчку:
$tpl->set( '{registration-link}', $PHP_SELF . "?do=register" );
и заменить на:
$tpl->set( '{registration-link}', $PHP_SELF . "?do={$config['register']}" );
3) В файле /engine/engine.php найти строчки:
case "register" :
и заменить на:
case $config['register'] :
elseif ($do == 'register') $nam_e = $lang['title_register'];
и заменить на:
elseif ($do == $config['register']) $nam_e = $lang['title_register'];
4) В файле /engine/modules/static.php найти строчки:
if( $_GET['page'] == "dle-rules-page" ) if( $do != "register" ) {
и заменить на:
if( $_GET['page'] == "dle-rules-page" ) if( $do != $config['register'] ) {
$tpl->set( '{ACCEPT-DECLINE}', "<form method=\"post\" name=\"registration\" id=\"registration\" action=\"\"><input type=\"submit\" class=\"bbcodes\" value=\"{$lang['rules_accept']}\" /> <input type=\"button\" class=\"bbcodes\" value=\"{$lang['rules_decline']}\" onclick=\"history.go(-1); return false;\" /><input name=\"do\" type=\"hidden\" id=\"do\" value=\"register\" /><input name=\"dle_rules_accept\" type=\"hidden\" id=\"dle_rules_accept\" value=\"yes\" /></form>" );
и заменить на:
$tpl->set( '{ACCEPT-DECLINE}', "<form method=\"post\" name=\"registration\" id=\"registration\" action=\"\"><input type=\"submit\" class=\"bbcodes\" value=\"{$lang['rules_accept']}\" /> <input type=\"button\" class=\"bbcodes\" value=\"{$lang['rules_decline']}\" onclick=\"history.go(-1); return false;\" /><input name=\"do\" type=\"hidden\" id=\"do\" value=\"{$config['register']}\" /><input name=\"dle_rules_accept\" type=\"hidden\" id=\"dle_rules_accept\" value=\"yes\" /></form>" );
5) В файле /engine/modules/register.php найти строчки:
$row['template'] = str_replace( "{%validationlink%}", $config['http_home_url'] . "index.php?do=register&doaction=validating&id=" . $idlink, $row['template'] );
и заменить на:
$row['template'] = str_replace( "{%validationlink%}", $config['http_home_url'] . "index.php?do={$config['register']}&doaction=validating&id=" . $idlink, $row['template'] );
<input name=\"do\" type=\"hidden\" id=\"do\" value=\"register\" />
и заменить на:
<input name=\"do\" type=\"hidden\" id=\"do\" value=\"{$config['register']}\" />
msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href=\"" . $config['http_home_url'] . "index.php?do=register&doaction=validating&step=2&id=" . rawurlencode( $_REQUEST['id'] ) . "\">" . $lang['reg_next'] . "</a>" );
и заменить на:
msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href=\"" . $config['http_home_url'] . "index.php?do={$config['register']}&doaction=validating&step=2&id=" . rawurlencode( $_REQUEST['id'] ) . "\">" . $lang['reg_next'] . "</a>" );
<input name=\"do\" type=\"hidden\" id=\"do\" value=\"register\" />
и заменить на:
<input name=\"do\" type=\"hidden\" id=\"do\" value=\"{$config['register']}\" />
6) В файле /robots.txt найти строчку Disallow: /*do=register и удалить ее.
7) Из всех файлов шаблона удалить старую ссылку на страницу регистрации, а в шаблоне login.tpl использовать тег {registration-link} (подробнее: http://dle-news.ru/extras/online/logintpl.html) для вывода нашей новой ссылки для регистрации.
Рекомендации:
I)
Если вы на своем сайте используете reCAPTCHA, то обязательно создайте для этой капчи персональный публичный и приватный ключи.
Сгенерировать ключи для своего сайта можно тут: http://www.google.com/recaptcha
После того, как ключи сгенерированы, их надо вставить в админке DLE в разделе "Настройка системы/Настройки безопасности скрипта".
II)
Обязательно используйте возможность стандартного модуля DLE - Вопросы и ответы для защиты от спама ( _http://ваш_домен/admin.php?mod=question ).
III)
Включайте возможность комментирования новостей только зарегистрированным пользователям. Или вставляйте на свой сайт комментирование от Вконтакте и Facebook.
IV)
Используйте стандартные функции DLE:
* Отправлять комментарии на модерацию
* Максимальное количество комментариев в сутки
* Автоматическое удаление зарегистрированных пользователей
* Разрешить регистрацию нескольких пользователей с одного IP
* Ограничение на добавление комментариев на сайте после регистрации
* Автоматический запрет комментирования новости по истечении указанного срока
* Защита от флуда
и другие.
Внимание! Регистр ссылки должен быть маленький, иначе ссылка не будет работать.
Не правильно: NuLLedCc
Правильно: nulledcc