подключение стилевых файлов

Главные вкладки

Аватар пользователя goodchelovek goodchelovek 23 мая 2009 в 1:09

добрый вечер, уважаемые
Вопросик наверное глупый, вот в основном шаблоне page.tpl.php мы к файлу style.css обрашаемся через объявление переменной <?php print $styles ?> а если мне нужно ещё один файл подключить напимер style2.css, как это правильно делается или подключить его только к определённым страницам, например style.css к главной а к внутренним помимо него ещё style2.css. Можно наверное прям в нодах это прописывать, но это не есть правиьно

Комментарии

Аватар пользователя goodchelovek goodchelovek 23 мая 2009 в 19:15

Не всё понял, извините за назойливость,но вот я пропишу это stylesheets[all][] = style2.css, а в пейдже как обращение будет выглядеть. И тогда дальше следуя логике ещё вопросы
А как содаются другие шаблоны, помимо page.tpl.php и как опреределённые ноды цеплять к своим шаблонам, ну чтобони обращались не к page.tpl.php а к своему шаблону. Единственное что пришло в голову типа есть нода, к примеру page-taxonomy-term-7, делать для неё шаблон page-taxonomy-term-7.tpl.php, но это не правильно это тогда под каждую ноду которая не по основной пейдже делается, свой пейдж делать. Есть другой способ? И вот в продолжение, как уже к страницам, которые делаются не по основному шаблону page.tpl.php цеплять другие стилевые файлы.
Почему я это спрашиваю, у меня в проекте главная страница идёт по одному шаблону, а внутренние по другому. Более того, для правильного управления трафиком, стили основные и для главной страницы идут в одном файле, а стили внутренних страниц в другом. При загрузке страницы идёт обращение к стандартному файлу style.css,в котором уже импортом подключается несколько файлов, в том числе и файл с содержащий общие стили и стили для главной страницы. А с внутренних страниц идёт обращение уже к файлу style2.css, в котором опять же импортом помимо вышесказанных стилевых файлов подключен и файл, отвечающий за стили внутренних страниц. Вот как это правильно реализовать в друпал. Если можно поподробнее.
Заранее благодарен за ваше время.

Аватар пользователя goodchelovek goodchelovek 23 мая 2009 в 19:37

А вот по помощи neochief открыл прочитал и честно не понял. А могу я подключить стилевой файл просто прямым обращением к файлу или это обсурт, наверное друпал должен его определить как-то

Аватар пользователя goodchelovek goodchelovek 24 мая 2009 в 13:20

у меня сайт имеет несколько шаьлонов. Как ноды цеплять не к основному шаблону page.tpl.php, а к любому другому. Самое примитивное, что я сделал, это наприер нода с именем taxonomy/term/2, я делал отдельную пейджу page-taxonomy-term-2.tpl.php, но это не есть правильно, не буду же я к каждой ноде у которой шаблон не page.tpl.php цеплять новую пейджу по её названию. Как это делается правильно

Аватар пользователя goodchelovek goodchelovek 24 мая 2009 в 17:54

ну млин, как объяснить. Любая публикация формируется на основе шаблона page.tpl.php
как сделать так чтоб публикация привязывалась к другому шаблону . Каков вообще механизм действий, если на сайте не один шаблон а несколько. Ну вроде всё.

Аватар пользователя neochief neochief 25 мая 2009 в 0:18

Файл template.php темы,

функция phptemplate_preprocess_page(&$vars) (если нет такой в теме, скопируйте из темы Garland и обновите кеш друпала),

добавить в конец функции что-то типа такого:

<?php
// ваши условия, по которым надо что-то менять.
// Внутренний путь страницы — $_GET['q']  (node/10)
// Внутренний путь в виде массива — arg($index)  ([0] => node, [1] => 10)
// Путь который видит юзер — drupal_get_path_alias($_GET['q']) (blog/moya-istoria)

if (arg(0) == 'node' || $some_other_experession) {
  // Заставляем страницу брать другой шаблон, например your-page.tpl.php (из папки темы, естественно)
  $vars['template_files'][] = 'your-page';
  // Или цепляем свой стиль в шаблон
  $path = drupal_get_path('theme', 'your_theme_name') . '/style2.css';  // путь относительно папки темы
  drupal_add_css($path, 'theme');
}
?>

Аватар пользователя goodchelovek goodchelovek 8 июня 2009 в 10:20

Ух уважаемые я от вас так просто не отстану.
Вопрос к Химический Али. Что значит по какому признаку надо подменять шаблоны.
Я действую стандартно, создаю тип публикации, поэтому типу публикации, ну это логично. Этот тип через таксономию или модуль вьюз, не важно выводит публикации. И он их навешивает на шаблон page.tpl.php,а у меня например есть ещё один шаблон, к примеру page_2.tpl.php. Вот как делать так чтоб одни типы сосвоими публикациями строились на основе одного шаблона, а другие на оснвове второго. Как задействовать не один основной шабон page.tpl.php, а несколько.

Аватар пользователя goodchelovek goodchelovek 8 июня 2009 в 10:26

Вопрос для neochief смотрю это что-то совсем в тему, но смущают слова "что-то типа того", если можно подоскональнее что писать что куда вставлять, что и как потом действовать в админке