добрый вечер, уважаемые
Вопросик наверное глупый, вот в основном шаблоне page.tpl.php мы к файлу style.css обрашаемся через объявление переменной <?php print $styles ?> а если мне нужно ещё один файл подключить напимер style2.css, как это правильно делается или подключить его только к определённым страницам, например style.css к главной а к внутренним помимо него ещё style2.css. Можно наверное прям в нодах это прописывать, но это не есть правиьно
Комментарии
drupal_add_css()
в информационном фалйле темы tema.info нужно добавить строчку
stylesheets[all][] = style2.css
Не всё понял, извините за назойливость,но вот я пропишу это 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, в котором опять же импортом помимо вышесказанных стилевых файлов подключен и файл, отвечающий за стили внутренних страниц. Вот как это правильно реализовать в друпал. Если можно поподробнее.
Заранее благодарен за ваше время.
А вот по помощи neochief открыл прочитал и честно не понял. А могу я подключить стилевой файл просто прямым обращением к файлу или это обсурт, наверное друпал должен его определить как-то
Можете и сами вписать руками в page.tpl.php, но тогда Друпал не сможет его сжать через свою систему кеширования CSS.
вопрос Химический Али авот по остальным моим вопросом можете подсобить
Может и мог бы, если б видел их.
у меня сайт имеет несколько шаьлонов. Как ноды цеплять не к основному шаблону page.tpl.php, а к любому другому. Самое примитивное, что я сделал, это наприер нода с именем taxonomy/term/2, я делал отдельную пейджу page-taxonomy-term-2.tpl.php, но это не есть правильно, не буду же я к каждой ноде у которой шаблон не page.tpl.php цеплять новую пейджу по её названию. Как это делается правильно
Что?
ну млин, как объяснить. Любая публикация формируется на основе шаблона page.tpl.php
как сделать так чтоб публикация привязывалась к другому шаблону . Каков вообще механизм действий, если на сайте не один шаблон а несколько. Ну вроде всё.
Это зависит от того, по какому признаку надо подменять шаблоны. По какому у вас? Напишите все точно и досконально.
Файл template.php темы,
функция phptemplate_preprocess_page(&$vars) (если нет такой в теме, скопируйте из темы Garland и обновите кеш друпала),
добавить в конец функции что-то типа такого:
// ваши условия, по которым надо что-то менять.
// Внутренний путь страницы — $_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');
}
?>
Ух уважаемые я от вас так просто не отстану.
Вопрос к Химический Али. Что значит по какому признаку надо подменять шаблоны.
Я действую стандартно, создаю тип публикации, поэтому типу публикации, ну это логично. Этот тип через таксономию или модуль вьюз, не важно выводит публикации. И он их навешивает на шаблон page.tpl.php,а у меня например есть ещё один шаблон, к примеру page_2.tpl.php. Вот как делать так чтоб одни типы сосвоими публикациями строились на основе одного шаблона, а другие на оснвове второго. Как задействовать не один основной шабон page.tpl.php, а несколько.
Вопрос для neochief смотрю это что-то совсем в тему, но смущают слова "что-то типа того", если можно подоскональнее что писать что куда вставлять, что и как потом действовать в админке
Я уже разжевал "дальше некуда", прочитайте коммент пару раз и сделайте как там написано.