Добрый вечер! Подскажите по поводу getdata-процессора. По аналогии с новинками хочу вывести на главную еще и скидки. Создала еще поле hot1 и директорию в которую положила свой getdata.class.php require_once dirname(dirname(FILE)).'/getdatanew.class.php';
class modWebCatalogProductsHot1GetdataProcessor2 extends modWebCatalogProductsGetdataProcessor1{
public function initialize(){
$this->setDefaultProperties(array(
'hot1' => true, // Получать скидки
"sort" => "{$this->classKey}.publishedon",
"dir" => "ASC",
));
return parent::initialize();
}
}
return 'modWebCatalogProductsHot1GetdataProcessor2'; в файле getdatanew.class.php задала процессор modWebCatalogProductsGetdataProcessor1 так, чтобы выводил скидки require_once dirname(dirname(dirname(FILE))).'/resources/getdata.class.php';
class modWebCatalogProductsGetdataProcessor1 extends modWebResourcesGetdataProcessor{
public function initialize(){
$this->setDefaultProperties(array(
'hot1' => false, // Получать скидки
));
$this->setProperties(array(
"base_currency_id" => (int)$this->modx->getOption("shopmodx.default_currency"), // ID базовой валюты магазина
));
return parent::initialize();
}
public function prepareQueryBeforeCount(xPDOQuery $z) {
$z = parent::prepareQueryBeforeCount($z);
$alias = $z->getAlias();
$z->innerJoin('ShopmodxProduct', 'Product');
if($this->getProperty('hot1')){
$z->innerJoin('modTemplateVarResource', 'hot1', "hot1.contentid = {$alias}.id AND hot1.tmplvarid = 15 AND hot1.value='1'");
}
// Поиск товаров в категории и подкатегориях
if($category_id = $this->getProperty('category_id')){
$categories = array();
$this->getCategories($category_id, $categories);
$Z->where(array(
"parent:IN" => $categories,
));
} как бы все работает, Но при вызове выводит Новинки + Скидки все в одном массиве.
Подскажите что нужно сделать, чтобы остались только Скидки?? спасибо