Opencart использует Категория как родительский для магазина (система мультисервиса)

Вопрос:

Все,

Я работаю на веб-сайте с несколькими магазинами.

Главный магазин — это. Второй магазин (тот же db, multi store) — это with uid 4

У меня есть для второго магазина категория с несколькими детьми, с великими детьми и так далее…

Мой вопрос очень прост, как я могу сделать категоризацию (с uid 355) родительской категорией для этого магазина вместо uid 0

Я буду использовать VQMOD позже, но теперь я вставляю код непосредственно в файлы, для быстрого программирования/отладки

Файл, который я [root]/catalog/module/category.php находится в: [root]/catalog/module/category.php

Я изменил этот код:

public function getCategories($parent_id = 0) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  AND c.status = '1' ORDER BY c.sort_order, LCASE(cd.name)");

return $query->rows;
}

К этому:

public function getCategories($parent_id = 0) {
if( $this->config->get('config_store_id') == 4 && $parent_id == 0 ){
$parent_id = 355;
echo "test1";
}
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  AND c.status = '1' ORDER BY c.sort_order, LCASE(cd.name)");

return $query->rows;
}

И это работает. На домашней странице исчезло неправильное меню списка категорий (там больше нет меню), а на странице списка категорий, подобной этой, есть правильная категория слева.

Если я удалю часть && $parent_id == 0, это будет неправильно на обеих страницах.

Кто-нибудь понял, как это исправить? Любая помощь будет изложена. Если вам нужна дополнительная информация, я дам ее вам.

-пс-жаль мой плохой английский

Лучший ответ:

Хорошо, после долгих попыток я лучше поискал в OpenCart и наткнулся на эту тему: OpenCart Fora Thread

Anser выглядит следующим образом: There a "top" flag you set to make it show up as a top level menu

Так что я сделал это:

Я отредактировал новую основную категорию (с uid 355) и отметил ее как верхнюю, что не помогло, но я ее оставил. Затем я отредактировал все прямые дочерние элементы основной категории и отметил их как топ и foila, вот они. проблема была решена.

Таким образом, с моим редактированием основного ядра и помечением категории, проблема теперь решена

Оцените статью
TechArks.Ru
Добавить комментарий