Как вывести значение поля в Drupal7

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

Аватар пользователя kwas kwas 10 мая 2011 в 14:41

Привет всем.
Изначальная задача: вывести часть текстовых полей ноды во вкладках (табах), чтобы не занимали много места.
Пробовал модуль Fieldgroup (7.x-1.0-rc2). Ничего не вышло. То ли я не разобрался, как им пользоваться, то ли он недоделан еще (RC в версии). Либо поля совсем не выводятся, либо они в рамочках (группах), либо только заголовки этих групп и открыть их невозможно. Никаких табов.
Попробовал Panels, на которую кладу Quick Tabs. НО Quick Tabs не умеет показывать поля текущей ноды. Может вывести уже готовые страницы, вьювсы или блоки. Тогда создаю блоки для каждого поля и эти блоки вывожу в табах. Но все, что я пробовал для вывода полей, в семерке НЕ работает. В сообщениях об ошибке вижу, например, что нет такой переменной $node и прочее.
КАК ВЫВЕСТИ ЗНАЧЕНИЕ ПОЛЯ ТЕКУЩЕЙ НОДЫ ? Например, в блоке.
Или с модулем Fieldgroup помогите разобраться, как его юзать?
ПЛИЗ, ХЕЛП !
Спасибо.

Комментарии

Аватар пользователя olk olk 10 мая 2011 в 14:55

render($content['машинное_имя_поля']);

При этом рендериться только один раз, т.е. если у вас в шаблоне уже есть render($content);
то надо предварительно сделать
hide($content['машинное_имя_поля']);

ps: поля должны быть доступны и видимы в отображении материала (настраивается в типах материалов - "Отображение"), иначе они не попадут в переменную $content.

Аватар пользователя kwas kwas 10 мая 2011 в 17:22

olk,
Спасибо за быстрый и подробный ответ. Но что-то не помогло.
Помогите разобраться.
Добавил в node.tpl.php две строки "hide" перед "print render($content);"
Получилоось:

<?php 
hide
($content['comments']);
hide($content['links']);
hide($content['field_properties']);
hide($content['field_plus']);
print 
render($content); ?>

Создал 2 блока, в каждом по одной строке (кроме тегов php):
<?php render($content['field_properties']); ?>
<?php render($content['field_plus']); ?>
Каждый блок поместил в отдельный таб модуля Quick Tabs
В результате обе закладки пустые. Добавляю в блоки текст (за тегами php) - он отображается. А значения полей - нет.