Тематическая «полевая коллекция» на страницах узла drupal 7 - PullRequest
4 голосов
/ 08 октября 2011

Drupal 7 "коллекция полей" - если я хочу создать тему для страницы узла, которая имеет "коллекцию полей", как мне разделить поля для настройки? Пока кажется, что только рендер печати ($ content ['field_collection_name']); выводит результат. Проблема в том, что я не могу понять, как изолировать поля для тематики.

Я создал для этого узел - content_type.tpl.php, но теперь застрял в воде. Был бы очень признателен, если бы кто-то спас мне день.

Решается следующим образом:

Некоторые из приведенных ниже ссылок действительно очень полезны, поэтому посмотрите, хотя, я сделал что-то вроде этого - Введите dsm(print_r($variables)); на узле, который будет отображаться в моем случае node--content_type.tpl.php с коллекцией полей, чтобы найти необходимые массивы и значения полей, а затем скрыть, конечно.

Тогда стиль оформления будет выглядеть примерно так

<div>class="class-for-label-here">My Desired Label - <span class="my-field-class-here"><?php print render($content['my_desired_field_here']['#items'][0]['value']); ?></span></div>

Ответы [ 3 ]

4 голосов
/ 08 декабря 2011

Здесь довольно хороший разговор о том же самом:

http://drupal.org/node/1155752

Основной ответ - тема с полем шаблона - your-field-collection-name.tpl.php

После этого вам просто нужно выяснить, как извлечь содержимое из массивов и / или объектов!

2 голосов
/ 23 ноября 2011

Вы можете создать собственный форматировщик поля для своего поля и использовать этот форматер в настройках вашего типа контента.

Поле форматирования дает полный контроль над выводом html перед его отображением в шаблон узла.

Вы можете использовать этот замечательный учебник для создания пользовательского поля форматирования: http://www.computerminds.co.uk/articles/creating-new-field-formatters-drupal-7

1 голос
/ 19 января 2013

Для более нормальной тематической работы на основе шаблонов попробуйте патч в http://drupal.org/node/1187990. Надеюсь, это войдет в Field Collection 2.x.

...