Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Выведение главной категории товара


relow

Recommended Posts

ocStore 2.3.0.2.3

 

Для выведения категории в модуле с товарами я  написал в контроллере:

              $categories = $this->model_catalog_product->getCategories($result['product_id']);
                if ($categories) {
                $categories_info = $this->model_catalog_category->getCategory($categories[0]['category_id']); }
                $data['products'][] = array(
                    'product_id'  => $result['product_id'],
                    'product_cat'    => $categories_info['name'] ?? null,
                    'thumb'       => $image,
                    'name'        => $result['name'],
                    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')) . '..',
                    'price'       => $price,
                    'special'     => $special,
                    'tax'         => $tax,
                    'rating'      => $rating,
                    'category'        => $this->model_catalog_product->getCategories($result['product_id']),
                    'href'        => $this->url->link('product/product', 'product_id=' . $result['product_id'])
                );

И в шаблоне: 

<?php if ($product['product_cat']): ?>
<span class="category"><?php echo $product['product_cat']; ?></span>          
<?php endif ?>

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

В файле admin\view\template\catalog\product_form.tpl главная категория записывается в main_category_id, но добавление main не помогает

Надіслати
Поділитися на інших сайтах


2 часа назад, relow сказал:

 

 

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

 

В файле admin\view\template\catalog\product_form.tpl главная категория записывается в main_category_id, но добавление main не помогает

как вариант из модели админа скопировать метод getProductMainCategoryId и вызвать уже его

ну или циклом по $categories искать категорию где ['main_category'] == 1

Надіслати
Поділитися на інших сайтах

$sql = "SELECT c.image, c.category_id, cd.name FROM " . DB_PREFIX . "category c
    LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id)
    LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (c.category_id = p2c.category_id)
    LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (p2c.category_id = c2s.category_id)
    WHERE  p2c.product_id = '" . (int) $product_info['product_id']. "' AND p2c.main_category = '1'
    AND cd.language_id = '" . (int) $this->config->get('config_language_id') . "'
    AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"; 

$query = $this->db->query($sql);
$cat_info = $query->row;
          

$data['products'][] = array(
  'category_name' => $cat_info['name'],
...................

 

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.