1. web/catalog/category/products/getdata — это про
Jan 11, 2014
-
web/catalog/category/products/getdata— это процессор, который ищет товары в текущей и во всех вложенных категориях. Там надо указыватьcategory_id(в которой будут искаться товары), а неparent, так как при указанииparentон должен бы найти товары с разделом-родителем id 85. У этого раздела просто нет дочерних документов вне дочерних категорий. -
Выводите ошибки, то есть просто делайте в шаблоне так:
<pre>
{print_r($result)}
</pre>
$result — это если у вас в процессоре assign=result. Если набивается в другую переменную, само собой надо указывать другую переменную. А лучше всего это делать в консоли. Там вы сразу увидите ошибки.
<?php
$modx->startTime = $modx->getMicroTime();
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
(
)
)
«level» => 2Такого параметра в процессоре нет.