Приятная неожиданность

Потребовалось сделать выборку категорий из отдельной таблица, и было собрался я городить очередной процессор и чтобы не усложнять начал переопредилять метод process не чего не возвращая запустил для теста не упало что нибудь и что я вижу? мне вернула строчку следующего содержимого "modCategorySearhProcessor" и тут я вспомнил что где то в недрах modx видел при вызове процессора проверку на существование класса в противном случаи выполнять через requre. смысл в следующем вот содержимое процессора $modx->addPackage('castumcategory',MODX_CORE_PATH.'components/castumcategory/model/');

$q = $modx->newQuery('modCastumCategoryName');

$q->select(array(

'modCastumCategoryName.*'

));

if ($scriptProperties['group']) {

$q->where(array(

    "group" => $scriptProperties['group']

));

};

$q->sortby($scriptProperties['sort'],$scriptProperties['dir']);

//$q->limit(100,0);

$q->prepare();

$q->stmt->execute();

return $q->stmt->fetchAll(PDO::FETCH_ASSOC); вот содержимое шаблона Металл

{processor action="web/search" params=['group'=>1,'sort'=>'name','dir'=>'ASC'] ns="qcore" assign=result}

{foreach from=$result item=val}

{$val.name}

{/foreach} считаю это реально круто, так как не всегда требуется вся мощь процессоров а нужно получить простенький массив. Это тоже самое что снипеты произвольный код только возвращается не echo а return KISS code рулит

Все новое - хорошо забытое старое)))

Но я бы все-таки просто расширил getdata-процессор. Что там, передал в него public $classKey = "modCastumCategoryName" и все.