Opencart список категорий внутри производителей

Opencart список категорий внутри производителей

07.08.2013 07:22:18 Просмотров 78 Источник

Я искал в течение нескольких часов, но не мог найти ответа на этот вопрос, или модуль, чтобы помочь.

Мы строим магазин, и нашему клиенту нужна возможность ориентироваться в магазине по производителю. Есть ли способ, чтобы страница производителя могла перечислить категории и подкатегории.

Кажется, есть два способа сделать это.

  1. Добавить бренды при добавлении категорий в разделе администратора.
  2. Получите все категории внутри брендов, присоединившись к операции при просмотре производителя.

Существуют ли какие-либо модули для связи категорий с производителями, чтобы я мог отображать категории внутри страницы производителя.

Или единственный способ-запросить все продукты внутри производителя и получить категории из него... Я думаю, это не очень хорошее решение.

Так что любые предложения будут большим подспорьем.

Спасибо.

У вопроса есть решение - Посмотреть?

Ответы - Opencart список категорий внутри производителей / Opencart list categories inside manufacturers

Является ответом!
Ashok Basnet

10.08.2013 12:35:31

Я придумал способ найти категории, которые принадлежат производителю. Второй вариант кажется лучше.

Вот функция, которую я добавил в catalog/model/catalog/manufacturer.php

public function getManufacturerCategories($manufacturer_id) {
    $query = $this->db->query("
        SELECT 
        DISTINCT c.category_id,cd.name
        FROM
        ". DB_PREFIX . "manufacturer m 
        LEFT JOIN ". DB_PREFIX. "product p ON (m.manufacturer_id = p.manufacturer_id)
        LEFT JOIN ". DB_PREFIX. "product_to_category p2c ON (p2c.product_id = p.product_id)
        LEFT JOIN ". DB_PREFIX. "category c ON (c.category_id = p2c.category_id)
        LEFT JOIN ". DB_PREFIX. "category_description cd ON (cd.category_id = p2c.category_id)
        WHERE
        p.status = 1
        AND m.manufacturer_id = '".(int)$manufacturer_id."'
        AND c.status= 1
        ");

    return $query->rows;
}

Вот выходной массив

stdClass Object (
    [row] => Array
        (
            [category_id] => 20
            [name] => Desktops
        )

    [rows] => Array
        (
            [0] => Array
                (
                    [category_id] => 20
                    [name] => Desktops
                )

            [1] => Array
                (
                    [category_id] => 24
                    [name] => Phones & PDAs
                )

        )

    [num_rows] => 2 )
Закрыть X