2026-07-13 19:51
timorphey

у вас на гитхаб написано: 

Шаг №5. Активация шаблона
Перейдите в админ-панель:
Управление сайтом → Конфигурация → Темы

а вы говорите в конфиге делается активация - я запутался

2026-07-13 20:40

однако нормальное замечание. 

активация темы действительно выполняется через файл конфига. 

а в админке мы форсируем применение шаблона/темы указанной в админке для каждого пользователя.

Почему так? - это чисто особенность движка, исторически в прошлых версиях и сейчас теоретически, каждый пользователь мог в настройках профиля выбрать для себя свой шаблон, если их есть несколько. Также при регистрации, в определенное поле -  user_theme таблицы cot_users БД пишется код шаблона, который вставляется из глобального значения Cot::$cfg['defaulttheme'] при выполнении функции cot_add_user, которая вызывается при успешной регистрации. Но это не единственный сценарий. Поэтому, что бы переопрделить значение user_theme у каждого пользователя, при установке новой темы, мы должны принудительно переопределить это значение, если у пользователя там устаревшие записи названия темы сайта. 

Как правильно: Cot::$usr['theme'] или Cot::$cfg['defaulttheme']?

Зачем это нужно?

Котонти, любому зарегистрированному пользователю шаблон показывает исходя из глобальной переменной $usr['theme'] а она получает свое значение вот так

$usr['theme'] = $cfg['forcedefaulttheme'] ? $cfg['defaulttheme'] : $row['user_theme'];

Мы в панели администратора, в разделе конфигурации, принудительно ставим установку темы по умолчанию для всех пользователей. Таким образом, мы пишем 1 (единицу) в глобальный массив $cfg['forcedefaulttheme']  
запись строки кода выше проверяет условие $cfg['forcedefaulttheme'] есть истина или ложь, который хранится в глобальном массиве настроек $cfg.
Если 1, то берётся значение из $cfg['defaulttheme'] (тема оформления по умолчанию в нашем файле конфигурации).
Если флаг равен false (выключен, 0, пусто) то уже берётся значение из $row['user_theme'] (персональная тема, которую выбрал конкретный пользователь, хранящаяся в массиве данных $row), а нам как раз этого нужно избежать.

Поэтому что бы $usr['theme'] был всегда равен $cfg['defaulttheme'] мы идем в админку и форсируем тему, устанавливая нашу единицу в $cfg['forcedefaulttheme'].   

надеюсь разобрались с вопросом ))

This post was edited by webitproff (2026-09-30 15:16, 2 weeks ago)
2026-07-13 20:51
timorphey

ничего себе нюансы...

2026-07-13 21:00

#565 timorphey: 
 

ничего себе нюансы...

 

Не забивайте дурным голову. на уровне администратора сайта вам знать эти детали не обязательно. достаточно просто однажды понять “так надо по инструкции” - поставили и забыли! Может аналогия грубая, но понятная, прошу без обид. Судья за рулем электромобиля должен знать принцип контроллеров электроники? куда и сколько вольт? - вот так и здесь, - что-то для слесаря важно, а пользователю оно и на … не нужно и не важно!

2026-07-19 15:00
timorphey

с установкой шаблона разобрался. если конечно можно так сказать. вообщем установил. времени просто не хватает, учусь и интересно. только вот что дальше с ним делать - я не знаю ) 🙄 

2026-07-20 14:34

#572 timorphey: 
 

с установкой шаблона разобрался. если конечно можно так сказать. вообщем установил. времени просто не хватает, учусь и интересно. только вот что дальше с ним делать - я не знаю ) 🙄 

здесь все просто, - ориентируйтесь на задачи, какие должен решать сайт, а потом разбивайте на подзадачи, который может выполнить шаблон. 

не хватайтесь за всё подряд, начните с чего-то одного, - статьи, пользователи или форумы, - какой раздел в приоритете, - с него и начинайте