Prior

Новичок
  • Публикаций

    7
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Prior

  • Звание
    Новичок
  1. у меня нет 1000 товаров но если у вас есть какието замечания то я с радостью возьму их во внимания сразу скажу я не спец по бд поэтому сделал как сумел )
  2. как всегда сам додумал но если кому надо будет то сделал <file path="catalog/model/catalog/product.php"> <operation> <search><![CDATA[ $filters = explode(',', $data['filter_filter']); ]]></search> <add position="replase" offset="6"><![CDATA[ $filters = explode(',', $data['filter_filter']); if (count($filters)<2) {$sql .= " AND pf.filter_id = $filters[0] ";} else { $sql .= " AND p.product_id in (SELECT product_id FROM " . DB_PREFIX . "product_filter WHERE filter_id = '". $filters[0] ."'"; for ($i=1; $i<count($filters); $i++) {$sql .= " AND product_id IN (SELECT product_id FROM " . DB_PREFIX . "product_filter WHERE filter_id = '".$filters[$i]."' ) ";} $sql .= ')'; } ]]></add> </operation> <operation> <search><![CDATA[ if (!empty($data['filter_name']) || !empty($data['filter_tag'])) { ]]></search> <add position="before" offset ="2"><![CDATA[ } else { if (!empty($data['filter_filter'])) { $implode = array(); $filters = explode(',', $data['filter_filter']); if (count($filters)<2) { $sql .= " AND pf.filter_id = $filters[0] "; } else { $sql .= " AND p.product_id in (SELECT product_id FROM " . DB_PREFIX . "product_filter WHERE filter_id = '". $filters[0] ."'"; for ($i=1; $i<count($filters); $i++) { $sql .= " AND product_id IN (SELECT product_id FROM " . DB_PREFIX . "product_filter WHERE filter_id = '".$filters[$i]."' ) "; } $sql .= ')'; } } ]]></add> </operation> </file> думаю если кому надо будет тот разберет код
  3. мне надо найти товар который 100% имеет в связях 2 конкретных фильтра напрмер товар авто фильтр красный (filter_id =7) фильтр пикап (filter_id = 25) поиск товаров происходит в \catalog\model\catalog\product.php public function getProducts($data = array()) { ... $sql .= " AND pf.filter_id IN (" . implode(',', $implode) . ")"; тоесть с моими данными это $sql .= " AND pf.filter_id IN (7,25)"; оно мне выдает все красные и все пикапы мне ненадо все а только красные пикапы
  4. нашел решение в начале модуля заменил public function index() { на public function index($position='') { а в файлах catalog/controller/common/ вместо $data['modules'][] = $this->load->controller('module/' . $part[0]); поставил $data['modules'][] = $this->load->controller('module/' . $part[0], 'название позиции');
  5. надо сделать вывод модуля разным для разных позиций (топ, лефт) и страниц (главная, категория, продукт) не только дизайн но и данные тоесть надо менять контроллер насчет страниц нашел такое $this->request->get['route'] а вот насчет позиции подскажите
  6. столкнулся с такой проблемой которую немогу решить я работаю над магазином деталей к авто на котором должно быть разбивка по типу товара например колеса, руль, мотор и т д но также и разбивка по автомобиле тоесть юзер должен указать свою машину и ему выведет товары имеено для его авто среди параметров авто есть: год выпуска, марка авто(бмв, мерс....), модель (S5,600 ...) тип кузова (универсал, седан....) и тут у меня возникла проблема как лучше это сделать если по фильтрах то тогда возникает возможность указать (600 жигули пикап за 2000г) что вообще неверно либо сделать подкатегориями но тогда как указать что 600 мерс - это седан или купе но чтоб отпал год больше 1998г и при этом будут общие категории например категория год в которой будет например 30 разных подкатегорий за эти года ну или свое виденье опишите