Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Как сделать доступ к сайту только авторизовавшимся?

Как сделать доступ к сайту только авторизовавшимся?


     20.08.2013    Общие вопросы    3041

вопрос
Добрый день! Подскажите, как сделать закрытый сайт на DLE.

Необходимо, чтобы просматривать сайт могли только авторизовавшиеся пользователи. А гостям при переходе на любую страницу сайта показывалась форма авторизации. Также необходимо, чтобы у гостей был доступ к регистрации и востановлению пароля.

У кого какие идеи, как это сделать?

Ответил: nikolay.safronov



[not-group=5]{content}[/not-group]
[group=5]{login}[aviable=register]{content}[/aviable][/group]

Комментарии пользователей (11)

sadan
16

107 | 38

sadan - 20 августа 2013 17:57 - Юзер

очень просто

<body> 
[not-group=5]
тут весь код шаблона и конечно же {login}
[/not-group]


[group=5]
и тут то что нужно для гостей и конечно же {login}
[/group]
</body>

nikolay.safronov
14

nikolay.safronov - 20 августа 2013 19:18 - Юзер

Это-то понятно. Но нужно еще сделать доступ гостям к регистрации и востановлению пароля.

Если гостям открыть {content}, то они увидят еще и другой контент кроме нужного. А если закрыть, то они не смогут и пройти регистрацию и востановить пароль.

Кто нибудь знает, как решить данную проблему?

sadan
16

107 | 38

sadan - 20 августа 2013 19:30 - Юзер

if(($_SERVER['REQUEST_URI'] == "")||($_SERVER['REQUEST_URI'] == "/")||($_SERVER['REQUEST_URI'] == "/index.php")) {
$tpl->load_template ( 'main.tpl' );
}
elseIf ($do == 'registraton') {
$tpl->load_template ('rega.tpl');
}
else {
$tpl->load_template ( 'content.tpl' );
}

nikolay.safronov
14

nikolay.safronov - 20 августа 2013 19:58 - Юзер

Прошу прощения за мое невежество, но куда это надо пихать?

sadan
16

107 | 38

sadan - 20 августа 2013 20:21 - Юзер

index.php заменить
$tpl->load_template ( 'content.tpl' );

на
if(($_SERVER['REQUEST_URI'] == "")||($_SERVER['REQUEST_URI'] == "/")||($_SERVER['REQUEST_URI'] == "/index.php")) {
$tpl->load_template ( 'main.tpl' );
}
elseIf ($do == 'тут выбери из .htaccess страницы котором выводится шаблоне см. вниз') {
$tpl->load_template ('тут шаблон например main.tpl или content.tpl');
}
else {
$tpl->load_template ( 'main.tpl' );
}

nikolay.safronov
14

nikolay.safronov - 20 августа 2013 22:16 - Юзер

Большое спасибо!
Но все-таки хотелось бы увидеть еще от кого-нибудь пример для решения моей проблемы.

Gopr
10

494 | 164

Gopr - 20 августа 2013 22:34 - Юзер

Попробуйте так:
1. Закрываем сайт
- Настройка системы
- Общие настройки
- Выключить сайт
2. Настройка групп пользователей
- У 1,2,3,4 групп в настройках ставим "Да" в "Разрешить просмотр отключенного сайта"
- У 5й группы должно стоять "Нет"
3. Открываем шаблоны сайта
- В offline.tpl вставляем: {include file="login.tpl"}, {include file="lostpassword.tpl"} и {include file="registration.tpl"}

{include file="login.tpl"} точно будет работать, остальное не знаю так как не пробовал...

Gopr
10

494 | 164

Gopr - 20 августа 2013 22:39 - Юзер

Также возможно понадобиться подключение стандартных скриптов типа:
/engine/classes/min/index.php?charset=windows-1251&amp;g=general&amp;8 и 
/engine/classes/min/index.php?charset=windows-1251&amp;f=engine/classes/highslide/highslide.js&amp;8"

sadan
16

107 | 38

sadan - 20 августа 2013 17:58 - Юзер

оо и еще не забудь в обоих теги {info} и {content}

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 20 августа 2013 22:20 - Админ

[not-group=5]{content}[/not-group]
[group=5]{login}[aviable=register]{content}[/aviable][/group]

как то так.

Каков вопрос - таков и ответ. Просто помните об этом.

nikolay.safronov
14

nikolay.safronov - 20 августа 2013 23:03 - Юзер

Спасибо! :)

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы