сортировка в рекомендуемых товара опенкарт 1.5

Тема в разделе "OpenCart", создана пользователем cherkas, 21 авг 2018.

  1. cherkas

    cherkas

    Регистрация:
    25 фев 2013
    Сообщения:
    451
    Симпатии:
    57
    Здравствуйте, собственно вопрос, как сделать сортировку товара в рекомендуемых товара согласно порядку сортировки этих рекомендуемых товаров

    сам запутался ))

    попробую проще

    1. у каждого товара можно проставить порядок сортировки.

    2. так же у каждого товара можно вывести ряд рекомендуемых товаров.

    3. так вот эти рекомендуемые товары отображаются в карточке товара скорее всего в порядке их внесения в рекомендуемые, а нужно отображать их в порядке согласно пункта 1.


    всё это для OpenCart Version 1.5.6.4
     
  2. Baco

    Baco Антихронофаг Команда форума

    Регистрация:
    9 окт 2012
    Сообщения:
    803
    Симпатии:
    399
    Тут глянь, вроде под запрос
     
  3. cherkas

    cherkas

    Регистрация:
    25 фев 2013
    Сообщения:
    451
    Симпатии:
    57
    немного не то, это для отдельного модуля рекомендуемые, а мне нужно для рекомендуемых в товаре те которые во вкладке связи

    http://prntscr.com/klq56l

    нужно, что бы они в катроче товара выводились согласно своему номеру порядка сортировки

    http://prntscr.com/klq8ad
     
    Последнее редактирование: 22 авг 2018
  4. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Надо поправить запрос в методе getProductRelated в /catalog/model/catalog/product.php.
    Дописать в конец:
    Код:
     ORDER BY p.sort_order
     
    cherkas нравится это.
  5. cherkas

    cherkas

    Регистрация:
    25 фев 2013
    Сообщения:
    451
    Симпатии:
    57
    Код:
        public function getProductRelated($product_id) {
            $product_data = array();
    
            $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_related pr LEFT JOIN " . DB_PREFIX . "product p ON (pr.related_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pr.product_id = '" . (int)$product_id . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' LIMIT 12");
    
            foreach ($query->rows as $result) {
                $product_data[$result['related_id']] = $this->getProduct($result['related_id']);
            }
    
            return $product_data;
        }
    подсобите уж до конца если не сложно, в конец это куда? :Sorry:
     
  6. Baco

    Baco Антихронофаг Команда форума

    Регистрация:
    9 окт 2012
    Сообщения:
    803
    Симпатии:
    399
    Код:
     public function getProductRelated($product_id) {
            $product_data = array();
    
            $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_related pr LEFT JOIN " . DB_PREFIX . "product p ON (pr.related_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pr.product_id = '" . (int)$product_id . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' ORDER BY p.sort_order LIMIT 12");
    
            foreach ($query->rows as $result) {
                $product_data[$result['related_id']] = $this->getProduct($result['related_id']);
            }
    
            return $product_data;
        }
     
    cherkas нравится это.
  7. cherkas

    cherkas

    Регистрация:
    25 фев 2013
    Сообщения:
    451
    Симпатии:
    57
    всем спасибо, работает