MIGX конечно же предпочтительней по ряду причин, в

MIGX конечно же предпочтительней по ряду причин, в том числе и потому что не приходится 100500 ТВшек создавать. Вот я на одном проекте так докручивал галерею. В процессор получения товара дописал: public function afterIteration(array list){ list = parent::afterIteration($list);

    foreach($list as & $l){  
    
        switch($this->getProperty('image_url_schema')){
            case 'base':
                $images_base_url = $this->modx->runSnippet('getSourcePath');
                break;
            
            case 'full':
                $images_base_url = $this->modx->getOption('site_url');
                $images_base_url .= preg_replace("/^\//", "", $this->modx->runSnippet('getSourcePath'));
                break;
            
            default: $images_base_url = '';
        }      
        /*
            Картинки
        */
        $l['images'] = array();
        
        if(!empty($l['tvs']['images']['value'])){
            $images = json_decode($l['tvs']['images']['value'], true);
            foreach($images as $image){
                $image['image'] = $images_base_url.$image['image'];
                $l['images'][] = $image;
            }
        }
    }
    return $list;
} А в шаблоне уже оформление по своему вкусу. У меня это вот так: {if $object.images}
                {foreach $object.images as $img}
                    {snippet name="phpthumbof" params="input=`{$img.image}`&options=`w=65&h=65&q=90`" assign=thumb}
                    <a rel="useZoom: 'zoom1', smallImage: '{$thumb}'" title="" href="{$img.image}" class="cloud-zoom-gallery">
                        <img alt="" src="{$thumb}">
                    </a>
                {/foreach}

{/if}