Отображать тип содержимого в пользовательском формате отображения
Я создал тип контента с именем "профиль", в котором есть поля Имя профиля, Изображение , сообщение , тело.
Он отображает в этом формате прикрепленное изображение_1
Теперь как мы можем организовать или внести изменения в пользовательский формат, как показано ниже изображение image_2 как мы можем показать конечному пользователю
1 answers
Вы можете использовать node--NAMECONTENTTYPE.tpl.php
в своем шаблоне каталога. Пожалуйста, ознакомьтесь с этой документацией и комментариями о шаблонах в Drupal 6 http://drupal.org/node/17565 , это даст вам руководство по распознаванию некоторых различий с Drupal 7.
Чтобы быть более подробным, вы можете скопировать/вставить в каталог вашей темы файл node.tpl.php (находится в modules > node
или уже находится в каталоге вашей темы) и переименуйте его в соответствии с вашим типом контента. например, если тип контента Article
имя будет node--article.tpl.php
Уже внутри в node--article.tpl.php
вы можете увидеть переменную $content
или вы можете использовать $node
. $content
(или $node
) переменная содержит содержимое вашего узла. вы можете использовать print_r($content);
, чтобы просмотреть список полей, которые вы можете использовать для своего узла (или, если вы используете модуль разработки, лучше всего использовать dsm($content);
)
Смотрите этот пример:
У меня есть поле с именем field_demotext1
, тогда это способ, который я могу использовать для вызова их соответствующего значения в любом пользовательском html зона расположения моего узла:
echo $content['field_demotext1']['#items'][0]['value'];
Вот пример зоны в node--article.tpl.php
, где вы можете использовать пользовательский html:
<div class="content clearfix"<?php print $content_attributes; ?>>
<?php
// We hide the comments and links now so that we can render them later.
hide($content['comments']);
hide($content['links']);
//print render($content); comment to hide all content
echo $content['field_demotext1']['#items'][0]['value']; //will only show field_demotext1 value
?>
</div>