Есть прекрасный модуль Administration menu, который намного меню управления, удобнее даже семерочного. Одна проблема - оно показывается везде независимо от темы оформления, что бывает очень неудобно. Может кто-нибудь знает решение, чтобы его привязать только в нужным темам - или хотя бы только к теме, выбранной для администрирования?
PS Решил патчем. Файл admin_menu.module, текущая версия 7.x-3.0-rc4, начиная со строки 155
Вместо
<?php function admin_menu_page_build(&$page) {
if (!user_access('access administration menu') || admin_menu_suppress(FALSE)) {
return;?>
ставим
<?php function admin_menu_page_build(&$page) {
global $theme;
if (!user_access('access administration menu') || admin_menu_suppress(FALSE) || variable_get('admin_theme') !== $theme) {
return;?>
Получаем сокрытие меню во всех темах, кроме определенным админским.
Комментарии
а в чем проблема?его только администратор по умолчанию видит.
Это тоже неудобно, при разработке. Решил патчем.
зачем в модуль лезть , если то же самое можно решить с помощью hook_page_alter в своем модуле или в template.php той темы, для которой его не нужно отображать
Приведите пример как. Без танцев с бубном. Но не сокрытием через css - а полным убиранием кода
* Implements hook_page_alter().
*/
function MYMODULE_page_alter(&$page) {
global $theme;
if (!user_access('access administration menu') || variable_get('admin_theme') !== $theme) {
$page['page_bottom']['admin_menu']['#access'] = FALSE;
}
}
Спасибо. Плохо я знаю семерочную эту фишку с перекрытиями темы - в 6-ке не было таких радостей.