Принудительно заблокировать страницу, чтобы использовать тему администратора?
Я пытаюсь использовать этот фрагмент, который я нашел, но он выдает следующую ошибку:
function mytheme_init() {
// Hardcode the administration theme onto the blocks page
if ($_GET['q'] == 'admin/build/block') {
global $theme;
$theme = 'rubik';
}
}
Неустранимая ошибка: Неподдерживаемые типы операндов в /var/www/клиенты/client4/web39/web/модули/блок/block.admin.inc в строке 39
Строка $theme = 'rubik'; кажется, в чем-то виновата, так как она не выдает ошибку, если я ее прокомментирую.
2 answers
Вы должны использовать глобальную переменную $custom_theme
.
Реализация вашего hook_init()
хороша.
Для этого есть хороший модуль: Тема администрирования.
Drupal позволяет вам определить другую тему для страниц администрирования (Администрирование - > Конфигурация сайта -> Тема администрирования). По умолчанию это относится только к страницам, путь к которым начинается с "администратор" и страниц редактирования содержимого.
Модуль темы администрирования позволяет использовать эту тему на других страницах, таких как:
- страницы пакетной обработки
- разработать нагрузку на узел и визуализация страниц
- страницы обзора кода кодировщика
- страницы, которые вы определяете сами в предоставленной текстовой области