Удаление или переопределение стандартных CSS-файлов

Иногда требуется изменить или удалить стандартные файлы CSS: system.css, defaults.css или system-menus.css . Мы конечно можем изменить эти файлы, но при обновление друпала мы можем забыть что меняли эти файлы и перезапишем их снова. Для того чтобы этого не произошло нужно исключить эти файлы из списка CSS выводимых друпалом, а если какие-то CSS из этих файлов вам понадобятся, то их можно скопировать в style.css вашей темы и отредактировать их. Тем самым вы защитите ваш CSS код от возможного удаления.

Итак, создайте файл template.php в папке с вашей темой, возможно он уже у вас есть. в этот файл нужно вставить следующий код:

function phptemplate_preprocess_page(&$vars) {
  $css = $vars['css'];
  unset($css['all']['module']['modules/system/system.css']);
  unset($css['all']['module']['modules/system/defaults.css']);
  unset($css['all']['module']['modules/system/system-menus.css']);
  $vars['styles'] = drupal_get_css($css);
}

Теперь CSS код из этих файлов можно копировать в файл style.css и редактировать.

Тоже самое касается и css-файлов модуля Nice menu, который очень часто используется для создания выпающих меню. Желательно менять CSS в файле style.css. Вставляем код, чтобы убрать из вывода css-файлы модуля Nice menu:

function phptemplate_preprocess_page(&$vars) {
$css = $vars['css'];
unset($css['all']['module']['modules/system/system.css']);
unset($css['all']['module']['modules/system/defaults.css']);
unset($css['all']['module']['modules/system/system-menus.css']);
unset($css['all']['module']['sites/all/modules/nice_menus/nice_menus.css']);
unset($css['all']['module']['sites/all/modules/nice_menus/nice_menus_default.css']);
$vars['styles'] = drupal_get_css($css);
}

 Стоит отметить что nice_menus/nice_menus_default.css это путь к файлу, в данном случае модуль Nice menu лежит в папке Nice_menus без версии модуля.

 

Комментарии

Добавить комментарий

Войти, используя Loginza Google Account Yandex Mail.ru Vkontakte Facebook
(If you're a human, don't change the following field)
Your first name.
(If you're a human, don't change the following field)
Your first name.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.