Собственно нужна помощь с php, не знаю циклы.
Помогите написать код
<?php$content['field_ingridientii'][$ВОТ_ТУТ_ЗНАЧЕНИЕ]['entity']['field_collection_item']?>
$ВОТ_ТУТ_ЗНАЧЕНИЕ это цифры массива, в каждой ноде их разное количество.
Нужно чтобы цикл их перебирал и выводил ВСЕ значение этого поля.
(Нужно для вывода микроразметке recipeingredient, мое поле собрано из коллекции полей)
Комментарии
Смог посчитать их количество
<?php $aaa = ($node->field_ingridientii['und']);
$result = count($aaa);
print $result;?>
Как теперь вывести все это
Поставьте модуль devel, пропишите в шаблоне dpm($node->field_ingridientii) и увидите структуру переменной. Но наверняка там в нём будут айдишники филдколлекшенов, а не их значения. Можно, например через entity_load_single загружать в цикле эти коллекции и обрабатывать их значения. В принципе, ничего сложного, просто надо разобраться, что к чему.
> Нужно чтобы цикл их перебирал и выводил ВСЕ значение этого поля.
Обычный display -> formatter для https://www.drupal.org/project/field_collection если чего то не хватает можно даже не писать новый форматтер а использовать views например через https://www.drupal.org/project/field_views
Люди весь день все изучал, но ни чего не получилось.
Дайте ссылки на инфу,.
Все что я смог сделать, а как это прогнать циклом?
<?php<li itemprop="recipeIngredient"> <?php print render($content['field_ingridientii'][0]['entity']['field_collection_item']);?>
<li itemprop="recipeIngredient"> <?php print render($content['field_ingridientii'][1]['entity']['field_collection_item']);?>
<li itemprop="recipeIngredient"> <?php print render($content['field_ingridientii'][2]['entity']['field_collection_item']);?>
<li itemprop="recipeIngredient"> <?php print render($content['field_ingridientii'][3]['entity']['field_collection_item']);?>
<li itemprop="recipeIngredient"> <?php print render($content['field_ingridientii'][4]['entity']['field_collection_item']);?>
<li itemprop="recipeIngredient"><?php print render($content['field_ingridientii'][5]['entity']['field_collection_item']);?>
http://php.net/manual/ru/control-structures.foreach.php
После долгих и мучительных попыток смог своять вот это, может кому пригодится:
<?php$aaa = ($node->field_ingridientii['und']);
$result = count($aaa);
$num=0;
while ($num < $result) {?>
<li itemprop="recipeIngredient"> <?php print render($content['field_ingridientii'][$num]['entity']['field_collection_item']);?> </li>
<?php $num++;} ?></li>?>
Всем спасибо!