Подскажите необходимо вставить в тег <body >

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

Аватар пользователя nic12 nic12 17 декабря 2011 в 18:33

Подскажите как можно вставить стилевые данные в тег body для определенной страницы?
То что имеется в ответах несколько не подходит, именно вставить в сам тег для определенной страницы.
Друпал 6

Комментарии

Аватар пользователя jazzzz jazzzz 17 декабря 2011 в 19:45

Если просто, то создать отдельный *tpl.php шаблон этой страницы, убрать оттуда вывод $body_classes и прописать свои классы.

Либо не трогая $body_classes в page.tpl.php переписать тег на что то подобное:

<body id="<?php if (arg(0) == 'mypage') {print 'атрибут_1';} ?>" class="<?php print $body_classes; ?>">

- где "mypage" - ваша страница а "атрибут_1" - нужный атрибут для последующей правки в CSS. То есть в данном примере вы задаете атрибуты не для класса а для ID тега body.

---
А вобще непонятно зачем вам это потребовалось. Ведь друпал сам генерирует кучу классов для разных страниц.

Аватар пользователя nic12 nic12 17 декабря 2011 в 20:21

Спасибо за помощь, ответ простой: имеется некоторая форма готовая, когда размещаю на странице то необходимо вставить маленький код и тогда форма работает.
Хотел бы еще вопрос
в теге body имеется "class="user-not_admin logged_in-no page-front layout-both destination-node-1 universal_destination-node-n page_ws_node_type_page page_ws_node_type_page-node_page".."
Как убрать это?

Аватар пользователя jazzzz jazzzz 17 декабря 2011 в 20:31

Эти классы генерируются переменной $body_classes в теге body. Если классы вам не нужны, удалите эту переменную из page.tpl.php Ну или создайте шаблон для нужной страницы page-моя_страница.tpl.php и удалите вывод $body_classes только в ней.

Аватар пользователя nic12 nic12 17 декабря 2011 в 20:54

jazzzz wrote:
Эти классы генерируются переменной $body_classes в теге body. Если классы вам не нужны, удалите эту переменную из page.tpl.php Ну или создайте шаблон для нужной страницы page-моя_страница.tpl.php и удалите вывод $body_classes только в ней.

Спасибо, вставил
<body id="<?php if (arg(0) == 'моя страница') {print ' аргумент_1';} ?>" class="<?php print $body_classes; ?>">

На нужной странице появляется
<body id="" class="not-front not-logged-in page-node node-type-page two-sidebars">

Так вот мне надо вставить в body onload='Start(); document.getElementById("Current").focus()'
Как правильно сделать?

Аватар пользователя sas@drupal.org sas@drupal.org 17 декабря 2011 в 21:18

body_classes можно и правильно переопределить/изменить в темном файле template.php в функции template_preprocess_page(&$variables), определение можно посмотреть в файле includes/theme.inc