$c->leftJoin('modTemplateVarResource','TVResources', 'TVResources.contentid = Product.resource_id'); $c->leftJoin('modTemplateVar','TemplateVar', 'TVResources.tmplvarid = TemplateVar.id');
foreach ($tvFilters as $value) { $key = explode("==", $value); $filter['TemplateVar.name'] = $key[0]; $filter['TVResources.value:='] = $key[1]; $c->where($filter); }
$filter_array = array(); foreach ($tvFilters as $value) { $key = explode("==", $value); $filter['TemplateVar.name'] = $key[0]; $filter['TVResources.value:='] = $key[1]; $filter_array[] = $filter; } $c->where($filter_array);
WHERE ( ( `modResource`.`deleted` = 0 AND `modResource`.`hidemenu` = 0 AND `modResource`.`published` = 1 ) AND `modResource`.`parent` IN (156,178,179,180,181,182,183,184,185,186,187,188,189,190,191) AND ( ( `TemplateVar`.`name` = 'shape' AND `TVResources`.`value` = 'rectangle' ) AND ( `TemplateVar`.`name` = 'processing_edge' AND `TVResources`.`value` = '10' ) ) )
WHERE ( ( `modResource`.`deleted` = 0 AND `modResource`.`hidemenu` = 0 AND `modResource`.`published` = 1 ) AND `modResource`.`parent` IN (156,178,179,180,181,182,183,184,185,186,187,188,189,190,191) AND ( `TemplateVar`.`name` = 'shape' AND `TVResources`.`value` = 'rectangle' ) AND ( `TemplateVar`.`name` = 'processing_edge' AND `TVResources`.`value` = '10' ) )
WHERE ( ( `modResource`.`deleted` = 0 AND `modResource`.`hidemenu` = 0 AND `modResource`.`published` = 1 ) AND `modResource`.`parent` IN (156,178,179,180,181,182,183,184,185,186,187,188,189,190,191) AND ( ( `TemplateVar`.`name` = 'shape' AND `TVResources`.`value` = 'rectangle' ) OR ( `TemplateVar`.`name` = 'processing_edge' AND `TVResources`.`value` = '10' ) ) )
$alias = $c->getAlias(); $c->innerJoin('modTemplateVarResource', 'tv_shape', "tv_shape.contentid = {$this->classKey}.id AND tv_shape.tmplvarid = $tv_shape_id AND tv_shape.value='rectangle'"); $c->innerJoin('modTemplateVarResource', 'tv_processing_edge', "tv_processing_edge.contentid = {$this->classKey}.id AND tv_processing_edge.tmplvarid = $tv_processing_edge_id AND tv_processing_edge.value='10'");