На сайте есть две темы, самописная (написанная с нуля) и для админки тема Seven. Есть 3 группы пользователей (как обычно): незарегистрированный, зарегистрированный и администратор. Дал доступ на создание некоторых материалов незарегистрированными и зарегистрированными пользователями. Соответственно переходя по ссылке типа node/add/type-name у незарегистрированного отображается тема самописная, а для зарегистрированного выводится тема Seven.
Нужно чтобы все роли кроме администратора видели только самописную тему.
Seven не убираю, так как там больше полей, в которых выводится админ. информация.
Понимаю, что нужно делать проверку типа
<?php
global $user;
if (!($user->uid===1)) {
установка каких-то параметров
}
?>
Только по результатам проверки непонятно что и где устанавливать.
Буду рад любой подсказке.
ПыСы Только если будете тыкать на апи.друпал.орг, то давайте ссылки на страницу конкретно по этой теме, а не на заглавную страницу посвященную темизации
Комментарии
Не проще просто отключить редактирование материалов для административной темы?
Грубовато, но подойдет такой вариант. Как переключить редактирование материалов с административной темы на самописную тему
Подскажете?
нет. написал же ТС:
ТС, попробуйте контексты как вариант...
Под контекстами имели ввиду этот модуль ?
Лично я решила по другому: field_group + настройка для каждого типа ноды, отображения + horizontal tabs...
field_group уже используется на этой странице, но я не понимаю вашего решения. При чем здесь field_group и horizontal tabs ? Field group используется для отображения формы, а мне нужно направить всю страницу в нужную тему.
Пункт "настройка для каждого типа ноды, отображения" объясните по подробнее, пожалуйста.
Geldora, я так понял, у ТС админ. информация для админов...
А контексты вроде тему не переключают, не?
На drupal.org если задать поиск по модулям для "theme", можно найти много чего, в том числе и для переключения тем.
Если Вы снимите галку в настройках оформления с «Использовать при редактировании документов» для выбранной административной темы, то... )
Контекст тему не переключит, там максимум — вставить текст в page. На дорге есть другие модули, в том числе и для переключения по ролям, адресам и вообще, как душа пожелает.
Только искать надо))
Да нашел еще позавчера два: самый простойPage theme, и чут-чуть сложнее Content theme.
Последний и стоит сейчас, но тему он почему-то не поменял. Есть у него отладочный подмодуль, который выводит информацию, какая тема на каком этапе определяется, показал следующее:
Default theme: customtheme
Theme customtheme is set by content_theme_custom_theme()
Theme Seven is set by system_custom_theme()
И судя по коду отладчика он выводит через module_implements(), то есть после дефалтной темы пишет, в том порядке, в котором hook_custom_theme() вызывается. И я не могу понять, почему из системного модуля этот хук вызывается уже после кастомного модуля, ведь должно быть наоборот.
Галочку снял, помогло. Спасибо.
Если богатый по функционалу модуль [module=ThemeKey]
Видео-туториал