Доброго времени суток Пожалуйста помогите разобраться с возникшей проблемой.
Вывожу поле в page.tpl, всё отлично выводится и работает. Но на некоторых страницах выдает ошибку, логично что это вызвано тем что код принтит пустое значение. Ниже код вывода поля.
<?php print render(field_view_field('node', $node, 'field_section_gallery', 'field_items'));?>
Как правильно создать условие if, чтобы поле выводилось лишь в случае если оно есть?? Пытался сделать как приведено ниже.. увы
<?php if (field_view_field('node', $node, 'field_section_gallery', 'field_items')) {
print render(field_view_field('node', $node, 'field_section_gallery', 'field_items'));}?>
Чет видимо не догоняю..
Спасибо за внимание, и заранее за помощь ))
Комментарии
вы выводите в page.tpl.php поля, которые принадлежат ноде(node.tpl.php), я не думаю, что это есть правильно.
ну а проверка на пустоту делается так if(isset($BlaBla) && $BlaBla != NULL){ ... };
Спасибо! ) Ошибок нет.
<?php if (isset ($node->field_section_gallery)):
print render(field_view_field('node', $node, 'field_section_gallery', 'field_items'));
endif;
?>
А почему это не есть правильно вроде как же офф инструкции нет?
page.tpl - это вывод страницы, node.tpl - вывод ноды. Конечно, ничего не мешает смешать всё в кучу и перевернуть с ног на голову, но от этого неизбежно страдает здравый смысл.
Что касается конкретно вашего случая, то имеет смысл поставить ещё и проверку на тип ноды (это если делать по вашему странному способу), а если делать по-правильному, то вообще нужен node--[type].tpl.php
gun_dose, я думал о том что вы пишете, создать отдельный node--[type]. но справится ли он с задачей? Мне нужно вывести определенное поле, именно под заголовок а он в обертке div. А этот div в page.tpl
<?php
<div class="front_page">
<?php print render($title_suffix); ?>
<!--сейчас здесь выводиться поле..--!>
</div>
?>
title = Ferrari Dino
И поле "field_section_gallery" = Транспорт
как-то так
Вы выводите на главной подзаголовок прикреплённого материала? Ну тогда может быть сойдёт) Только лучше page--front.tpl.php
gun_dose да) наверное page--front.tpl.php и буду использовать) Спасибо за советы )