Если включен модуль фильтрации:
Открыть
/modules/blocklayered/blocklayered.php
перед:
Код:
AND p.id_product IN ('.implode(',', $product_id_list).')
добавить:
Код:
AND stock.quantity > 0
иначе открыть файл
/classes/Category.php и после:
Код:
AND cp.`id_category` = '.(int)$this->id
добавить:
Код:
.' AND stock.quantity > 0'
Поиск:
открыть
/classes/poisk.html и после:
Код:
WHERE p.`id_product` '.$product_pool.'
добавить:
Код:
AND stock.quantity > 0
и ниже:
Код:
$sql = 'SELECT COUNT(*)
FROM '._DB_PREFIX_.'product p
'.Shop::addSqlAssociation('product', 'p').'
INNER JOIN `'._DB_PREFIX_.'product_lang` pl ON (
p.`id_product` = pl.`id_product`
AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').'
)
LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON m.`id_manufacturer` = p.`id_manufacturer`
WHERE p.`id_product` '.$product_pool;
заменить на:
Код:
$sql = 'SELECT COUNT(*)
FROM '._DB_PREFIX_.'product p
'.Shop::addSqlAssociation('product', 'p').'
INNER JOIN `'._DB_PREFIX_.'product_lang` pl ON (
p.`id_product` = pl.`id_product`
AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').'
)
LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON m.`id_manufacturer` = p.`id_manufacturer`
LEFT JOIN `'._DB_PREFIX_.'product_attribute` pa ON (p.`id_product` = pa.`id_product`)
'.Shop::addSqlAssociation('product_attribute', 'pa', false, 'product_attribute_shop.`default_on` = 1').'
'.Product::sqlStock('p', 'product_attribute_shop', false, $context->shop).'
WHERE p.`id_product` '.$product_pool.'
AND stock.quantity > 0';