Проблемы с TV при запуске pdoResources в сниппете.

Всем, кто прочитает доброго здравия!

Передо мной встала такая задача:
В категории сделать вывод дочерних категорий вкладками, в которых будут лежать товары этой дочерней категории.
Чтобы вручную не прописывать это каждый раз — решил сделать сниппет под это дело, сам сниппет:

<?php
//выборка дочерних элементов
$q = $modx->newQuery('modResource');
$q->where(array(
	'parent' => $modx->resource->id
));
$q->select(array(
   'modResource.pagetitle
   ,modResource.id
   ,modResource.menuindex'
));
$q->sortby('menuindex', 'ASC');
$q->limit(10); 

$q->prepare();
$q->stmt->execute();

$result = $q->stmt->fetchAll(PDO::FETCH_ASSOC);

//если результат положительный выполняем:
if (count($result)) { 
//выводим названия вкладок
    $output = '<div class="tabs notChanged"> <ul class="tabs__caption">';
    foreach ($result as $res) {
        $output .= '<li>'.$res['pagetitle'].'</li>';
    }
    $output .= '</ul>';
//получаем набор параметров и модифицируем его
    $params = $modx->getObject('modPropertySet',array('name'=>'listCatalog'));
    $params = $params->getProperties();
    $params['parents'] = $res['id'];
    $params['tpl'] = 'catalogProduct4';
    $params['includeTVs'] = 'image';
//вызываем pdoResources столько раз, сколько у нас вкладок
    foreach ($result as $res) {
        $output .= '<div class="tabs__content listCatalog">';
        $output .= $modx->runSnippet('pdoResources', $params);
        $output .= '</div>';
    }
    $output .= '</div>';
};
return $output;
//happy(нет) end
Собственно все работает прекрасно кроме одной вещи — в сниппет не попадает значение tv image.
Пробовал выводить результат без чанка — в массиве значений страницы есть параметр tv.image, но он пустой.

Есть у кого-нибудь мысли, почему может теряться картинка?

UPD
Проблему решил, не в том месте указывал $res['id']
Сам код не удаляю, вдруг кому пригодится.
Олег
25 января 2017, 15:40
modx.pro
887
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0