[Решено] Темизация формы определенного типа материала при его создании

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

Аватар пользователя antbert antbert 15 июля 2013 в 12:42

День добрый.

Хочу подгружать js-файл при создании определенного типа node.
Каталог - /www/themes/garland/
template.php:

<?php
 
function Garland_theme($existing$type$theme$path){
  return array(
    
'inf_node_form' => array(
      
'arguments' => array('form' => NULL),
      
'template' => 'inf'
    
)
 );
}
?>

Файл inf.tpl.php


<?php
print ("pff");
?>

Вместо print хочу в дальнейшем вставить подключение js файла, это ради теста, в итоге ничего не выводит, то бишь тест не проходит.
Где я мог ошибиться?

Комментарии

Аватар пользователя antbert antbert 15 июля 2013 в 15:29

После изменения буквы на малую - эффекта 0.
Привожу еще раз код.

Путь: 0:/www/themes/garland/
template.php

<?php
 
function garland_theme($existing$type$theme$path){
  return array(
    
'zayavkalib_node_add_form' => array(
      
'arguments' => array('form' => NULL),
      
'template' => 'zayavkalib'
    
)
 );
}
?>

Файл zayavkalib.tpl.php


<?php
print ("pff");
?>

/node/add/zayavkalib
Отсутствие в исходном коде "pff"

Аватар пользователя antbert antbert 15 июля 2013 в 16:03

Тут суть в том, что мне в любом случае придется темизировать, свои стили и пр.
Было бы удобнее делать способом, который я изложил в начале.
Попробую Ваш способ, спасибо.

Аватар пользователя Chyvakoff Chyvakoff 15 июля 2013 в 16:10

"antbert" wrote:
Тут суть в том, что мне в любом случае придется темизировать, свои стили и пр.

Опять же, это проще всего сделать через hook_form_FORM_ID_alter.
Там и стили подтянуть, и поправить html код формы можно. Обертки свои для элементов сделать, аттрибутов понаставить.

Аватар пользователя q2_faith q2_faith 15 июля 2013 в 16:11

"antbert" wrote:

вам все равно придется этот хук использовать. потому как, если шаблон заработает, то там элементов форм не будет.

Аватар пользователя antbert antbert 17 июля 2013 в 11:01

Я подключал в теме, но этот js используется не везде, хотел его подключить именно для этой формы.

<?php
function ztest_form_test_node_form_alter(&$form, &$form_state) {
drupal_add_js('../themes/garland/js/blockFields.js');    
}
?>
Аватар пользователя q2_faith q2_faith 17 июля 2013 в 11:46

"FORTIS" wrote:
в альтере правильно подключать с #attached ваш вариант косячный

я в 6-ке не нашел #attached. тоже хотел так посоветовать)

Аватар пользователя FORTIS FORTIS 17 июля 2013 в 12:21

формальтер для модификации формы, не подключайте скрипты и стили там - они не всегда будут подключаться