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

ID всех категорий товара


zzharuk

Recommended Posts

Добрый день.
Есть следующая структура:

  • Категория
    • Субкатегория 1
      • Субкатегория 2
        • Товар

На странице Главной категории выводятся товары (category.tpl). Как к товару добавить айди категорий и субкатегорий  к которым он относится?


Ожидаемый результат такой: data-categories="КатегорияID_Субкатегория1ID_Субкатегория2ID"

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


как пример посмотрите файл от seopro

а именно метод getPathByProduct

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


как-то так:

 

Цитата

$cat = array();    
    $product_category = $this->model_catalog_product->getCategories($product_id);
          foreach ($product_category as $prodcat) {
              
          $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']);
            if ($category_info) {
           $cat[] = array(
          'name'     => $category_info['name'],
          'href'     => $this->url->link('product/category', 'path=' . $category_info['category_id'])
          );
            }
          }

 

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


14 часов назад, MilkeyWay сказал:

как-то так:

 

 

Спасибо, нашел другой способ. Может пригодится кому-то.

 

Перед $products[] = array(

//

$product_categories = array();
                                    
                                    
$categories = $this->model_catalog_product->getCategories($result['product_id']);
                                    if($categories){
                                        foreach($categories as $category){
                                            $category_info = $this->model_catalog_category->getCategory($category['category_id']);
                                            $product_categories[] = array(
                                                'id' => (string)$category['category_id'],
                                                'name' => $category_info['name'],
                                                'href' => $this->url->link('product/category', 'path=' . $category_info['category_id'] )
                                            );
                                        }
                                    }
                        $products[] = array(

В массив $products[] = array(

добавляем строку

'product_categories' => $product_categories, //массив с id

 

Ну и вывод в .tpl в цикле <?php foreach ($category['products'] as $product) { ?>

 

<?php if($product['product_categories']){ ?>
	<?php  $product_categorie_ids='';?>
	<?php foreach($product['product_categories'] as $category){ ?>
			<?php  $product_categorie_ids = $product_categorie_ids . '_' . $category['id'];?>
	<?php } ?>
	<span><?php echo $product_categorie_ids; ?></span>
<?php } ?>

 

Змінено користувачем zzharuk
добавил код
Надіслати
Поділитися на інших сайтах


32 минуты назад, zzharuk сказал:

$categories = $this->model_catalog_product->getCategories($result['product_id']);

 

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

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


А че нужно-то? получить все пути товара?
Один запрос - и все будет хорошо
подсказка Group_Concat

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

44 минуты назад, chukcha сказал:

А че нужно-то? получить все пути товара?
Один запрос - и все будет хорошо
подсказка Group_Concat

Нет, пути товара не нужны.

Нужно на странице Главной категории сгруппировать продукты в слайдеры по субкатегориям.

Находил платный модуль. Есть бесплатный, который выводит плиткой из любой категории. А id всех категорий вида "num_num_num" мне нужны в качестве data-attribute.

Вложеность такая:

Категория -> Субкатегория 1 -> Субкатегория 2 -> Товары

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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