создал еще одни tpl шаблон для отображения товара без этого tv, и fetch.tpl теперь формирует категорию без отображения веса товаров, но с весом было бы интереснее) Пока не разобрался…
Да, отображается так как надо при просмотре одного товара, при просмотре категории подставляется значения по умолчанию данного tv у каждого товара)
Да, было бы здорово их учитывать, от них много пользы для нестандартных задач) То есть если у вас TV-параметр weight, то пишете [[weight]] и получаете результат на текущей странице исходя из его значения. С логикой и связан мой вопрос, так как у самого TV weight указано значение по умолчанию, например 1, тип число, вывод стоит по умолчанию. И при добавлении в вышеупомянутом виде я вижу значение по умолчанию, хотя в карте товара в доп полях прописано иное. В общем, выводится дефолтное значение параметра, а не конкретного товара. Я менял тип данных с числа на текст и т.д. но та же картина. Возможно ли вставлять в Smarty шаблоны текущие значения тв еще каким-то образом, если не хочет работать [[? Может быть это что-то с modx, или php? У меня Apache/2.2.22 (Win32) mod_ssl/2.2.22 OpenSSL/1.0.1c PHP/5.3.13 Server at localhost Port 80 и MODX Revolution 2.2.10-pl (traditional)
{assign var=paramss value=[ "limit" => 100 ,"category_id" => 85 ]} {processor action="web/catalog/category/products/getdata" params=$paramss ns="modxsite" assign=result} Но если вам просто нужны все товары, то правильней просто получать товары, а не искать их в подкатегориях. {assign var=paramss value=[ "limit" => 100 ]} {processor action="web/catalog/products/getdata" params=$paramss ns="modxsite" assign=result}
простите но все таки не понял — как записать то верно? мне надо выбрать все товары из дочерних от 85 категории
print '<pre>'; ini_set('display_errors', 1); $modx->switchContext('web'); $modx->setLogLevel(3); $modx->setLogTarget('HTML'); $namespace = 'modxsite'; if(!$response = $modx->runProcessor('web/catalog/category/products/getdata', array(), array( 'processors_path' => $modx->getObject('modNamespace', $namespace)->getCorePath().'processors/', ))){ print "Не удалось выполнить процессор"; return; } $memory = round(memory_get_usage(true)/1024/1024, 4).' Mb'; print "<div>Memory: {$memory}</div>"; $totalTime= ($modx->getMicroTime() - $modx->startTime); $queryTime= $modx->queryTime; $queryTime= sprintf("%2.4f s", $queryTime); $queries= isset ($modx->executedQueries) ? $modx->executedQueries : 0; $totalTime= sprintf("%2.4f s", $totalTime); $phpTime= $totalTime - $queryTime; $phpTime= sprintf("%2.4f s", $phpTime); print "<div>TotalTime: {$totalTime}</div>";
print_r($response->getResponse()); А ошибка следующая: Array ( [success] =>; [message] => Не была указана категория [total] => 0 [errors] => Array ( )
[object] => Array
(
)
) 3. «level» => 2 Такого параметра в процессоре нет.
Доброй ночи господа)
вот пытаюсь вывести фото из tvs <div class="carousel-inner">
{processor action="web/catalog/products/slider/getdata" ns="modxsite" params="limit=100
" assign=result}
{if $result.success}
{foreach $result.object as $object}
<div class="item active">
{assign var=imgb value=$object.tvs.bigpicslider.value}
<li><img src="{snippet name=phpthumbof params="input=`{$imgb}`&options=`w=200&h=200&zc=1`"}" title="{field name=pagetitle}" align="left"/></li>
<div class="carousel-caption">
<h4>{$object.pagetitle}</h4>
<p>{$object.tvs.ex_slider.value}</p>
</div>
</div>
{/foreach}
{else}
{/if}
</div> в итоге получаю ошибку на выходе <li><img src="<h5>[2014-01-11 01:37:00] (ERROR @ /index.php)</h5><pre>[pThumb] Resource: 1 || Image: (none)
File not found: /home/dvershin/rezzzz.com/testmagaz/slider/bootstrap-mdo-sfmoma-03.jpg *** Skipping ***</pre> slider/bootstrap-mdo-sfmoma-03.jpg" title="Главная" align="left"/></li> Вроде же все так делаю прошу помощи
Добрый! Это не в shopModx, а в modxSmarty. Это не критично. Вот ответ: modxclub.ru/blog/vehicles/252.html#comment2446 Будет скоро пофиксено.