Форумы / National / Russian / Скины и дизайн / Кастомный дизайн для страницы логина

Страница входа с независимым дизайном

Macik
#40359 02.01.2015 16:58

Может кому-то пригодиться...

Задался целью для одого из проектов для страницы логина сделать полностью независимый дизайн (т.е. с произвольными заголовками и т.п.). Вспомнил про опцию настроек:

PHP
1
$cfg['enablecustomhf'] = TRUE;      // To enable header.$location.tpl and footer.$location.tpl

Однако оказалось, что она работает только для целых разделов сайта и модулей. Писать отдельный плагин не хотелось, поэтому вопрос был решен небольшой хитростью.

В файле `theme.rc.php` добавляем код:

1
2
3
4
5
6
7
8
9
10
11
12
13
cot_rc_add_file($cfg['themes_dir'].'/'.$usr['theme'].'/css/bootstrap.css'); // загрузка общих скриптов
 
global $env;
// проверка на предмет страницы логина
if (pathinfo($_SERVER['SCRIPT_NAME'],PATHINFO_BASENAME)=='login.php') {
    $env['location'] = 'login'; // даем системе понять, что мы в отдельном разделе с именем «login»
    define('COT_PLUG',true); // маленькая хитрость, чтобы сработал выбор кастомных шаблонов
   cot_rc_add_file($cfg['themes_dir'].'/'.$usr['theme'].'/css/login.css'); // загружаем скрипты для страницы логина
}
else
{
  // загружаем скрипты для остальных страниц сайта
}

Вся магия в выделенных строках.
Теперь создаем собственные для страницы логина шаблоны — файлы: `header.login.tpl`, `footer.login.tpl`. И корректируем файл config.php

Всё! Теперь у нас полностью независимая по дизайну от основного сайта страница входа. 

Пример, как это выглядит у меня, можно посмотреть на jsFiddle.

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Отредактировано: Macik (28.04.2017 22:38, 8 лет назад)