Чанк не видит аргументов

У меня есть этот фрагмент (я хочу получить элементы из XML-файла):

$movies = simplexml_load_file('http://www.example.com/example.xml');
$out = "";

foreach ($movies as $movie) {
$properties = array(
'photo'   => $movie->image,
'title'   => $movie->title,
'desc'    => $movie->teaser,
'channel' => $movie->channel,
'date'    => $movie->date);

$out .= $modx->getChunk('tpl_movies-item', $properties);
}

return $out;

И кусок tpl_movies-item:

<article>
[[+photo]]
[[+title]]
[[+desc]]
[[+date]]
[[+channel]]
aaa
</article>

Он показывает только «aaa» (но когда я добавляю «echo $ properties [‘photo’]», он печатает правильное значение), когда я изменяю значения в массиве на строки, например. ‘desc’ => «lololololol» это работает правильно. Не могли бы вы помочь мне, что мне делать?

0

Решение

Проблема, вероятно, в вашем утверждении foreach, так как simplexml_load_file() потребности ->children() перебрать разных потомков объекта под рукой. Пытаться:

foreach ($movies->children() as $movie) {
$properties = array(
'photo'   => (string)$movie->image,
'title'   => (string)$movie->title,
'desc'    => (string)$movie->teaser,
'channel' => (string)$movie->channel,
'date'    => (string)$movie->date);

$out .= $modx->getChunk('tpl_movies-item', $properties);
}

ОБНОВИТЬ

Попробуйте привести свойства как string как в примере выше, так как они могут быть возвращены как объекты.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]