Если в остальном используется типовой функционал umi, лучше писать свои скрипты "прокси".
Например:
public function getObjectsListCustom($template = "default", $path = false, $limit = false, $ignore_paging = false, $i_need_deep = 0, $field_id = false, $asc = true) {
if(!$template) $template = "default";
$category_id = $this->analyzeRequiredPath($path);
if($category_id === false && $path != KEYWORD_GRAB_ALL) {
throw new publicException(getLabel('error-page-does-not-exist', null, $path));
}
if(!getRequest('fields_filter')) {
list($template_block, $template_block_empty, $template_block_search_empty, $template_line) = def_module::loadTemplates("catalog/".$template, "objects_block", "objects_block_empty", "objects_block_search_empty", "objects_block_line");
$block_arr['numpages'] = umiPagenum::generateNumPage(0, 0);
$block_arr['lines'] = "";
$block_arr['total'] = 0;
$block_arr['per_page'] = 0;
$block_arr['category_id'] = $category_id;
return $this->parseTemplate($template_block_search_empty, $block_arr, $category_id);
}
return $this->getObjectsList($template, $category_id, $limit, $ignore_paging, $i_need_deep, $field_id, $asc);
}