Фильтрация товаров по опциями товаров через XPDO
Добрый день, подскажите по синтаксису, пожалуйста.
Вот кусок кода, я делаю фильтрацию по опциями товаров, как мне сделать фильтрацию сразу по двум опциями?
Вот кусок кода, я делаю фильтрацию по опциями товаров, как мне сделать фильтрацию сразу по двум опциями?
$criteria = $modx->newQuery('msProduct');
$criteria->sortby('menuindex', 'ASC');
$criteria->where(array(
'id:IN' => $array_ids,
'published' => 1,
'class_key' => 'msProduct',
array('msProductOption.key' => "tolschina_paneli_mm", 'msProductOption.value:IN'=> array("1","1.1")),
array('msProductOption.key' => "ploschad_rabochaya_poleznaya_kvm", 'msProductOption.value:IN'=> array("0.84"))
));
$criteria->innerJoin('msProductOption', 'msProductOption', 'msProduct.id=msProductOption.product_id');
$resources = $modx->getCollection('msProduct',$criteria);
Комментарии: 1
также пробую делать так, тоже не выходит, в чем я не прав?
$array_ids = $modx->getChildIds($parents,6);
$criteria = $modx->newQuery('msProduct');
$criteria->sortby('menuindex', 'ASC');
$criteria->innerJoin('msProductOption', 'msProductOption', 'msProduct.id=msProductOption.product_id');
$criteria->innerJoin('msProductOption', 'msProductOption2', 'msProduct.id=msProductOption2.product_id');
$criteria->select(['msProduct.id', 'msProduct.parent']);
$criteria->where(array(
'id:IN' => $array_ids,
'published' => 1,
'class_key' => 'msProduct',
array('msProductOption.key' => "tolschina_paneli_mm", 'msProductOption.value:IN'=> array("1","1.1")),
array('msProductOption2.key' => "ploschad_rabochaya_poleznaya_kvm", 'msProductOption2.value'=> array("0.84"))
));
$resources = $modx->getCollection('msProduct',$criteria);
echo count($resources);
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.