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

Вывод подкатегорий на странице товара


Recommended Posts

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

 

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

 

Пример: Родительская категория1>подкатегория1>товар. Чтобы под хлебными крошками был список подкатегорий, которые содержатся в Родительской категории1, для более удобной навигации по сайту. 

 

Надеюсь, что сумела выразить свою мысль понятно.

 

Спасибо! :)

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


Когда заходишь в категорию, например, в  СКУД. Ниже отображается category-list: картинка

 

Вот нужно это у товаров из категории скуд(во всех категориях, в зависимости от того к какой категории товар относится) у каждого товара показывать.

Спасибо за ответ!

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


То есть отображать все Под-категории в товаре?

 

PS  Это не категори-лист , а так называемый Refine-search

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

То есть отображать все Под-категории в товаре?

 

PS  Это не категори-лист , а так называемый Refine-search

да. именно. :) есть попытка сделать чтото в product.tpl которая не работает. с 10 по 58 строку добавлено:\

 

 

 

<? #BEGIN ?>
<?php
$parent_id = 0;
$categories = array();

$product_categories = $this->model_catalog_product->getCategories($product_id);

foreach ($product_categories as $product_category) {
  if($product_category['main_category']) {
    $parent_id = $product_category['category_id'];
    break;
  }
}
$parent_categories = $this->model_catalog_category->getCategories($parent_id);
foreach ($parent_categories as $category) {

  $categories[] = array(
    'name'  => $category['name'],
    'href'  => $this->url->link('product/category', 'path=' . $category['parent_id'] . '_' . $category['category_id'])
  );

  $children = $this->model_catalog_category->getCategories($category['category_id']);

  foreach ($children as $child) {

    $categories[] = array(
      'name'  => $child['name'],
      'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
    );
  }
}
if ($categories) { ?>


<div>
  <ul>
    <?php foreach ($categories as $category) { ?>
    <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>
    <?php } ?>
  </ul>
</div>

<?php } ?>
<? #END ?>

 

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


сделано: в product.tpl после строки(примерно 9-я) 

<div class="product-info">

пишем: 

<? #BEGIN ?>
<?php
$parent_id = 0;
$categories = array();

$product_categories = $this->model_catalog_product->getCategories($product_id);


$parent_id = $product_categories[0]['category_id'];

$parent_categories = $this->model_catalog_category->getCategories($parent_id);

foreach ($parent_categories as $category) {

$categories[] = array(
'name' => $category['name'],
'href' => $this->url->link('product/category', 'path=' . $category['parent_id'] . '_' . $category['category_id'])
);

$children = $this->model_catalog_category->getCategories($category['category_id']);

}

if ($categories) { ?>

<div>
<ul>
<?php foreach ($categories as $category) { ?>

<?php } ?>
</ul>
</div>

<?php } ?>
<? #END ?>

Затем, сделаем чтобы отображалось по-человечески в несколько столбцов, а не в один:

 

<?#category?>
<?php if ($categories) { ?>
 <!-- <h2><?php echo $text_refine; ?></h2>-->
  <div class="category-list">
    <?php if (count($categories) <= 5) { ?>
    <ul>
      <?php foreach ($categories as $category) { ?>
      <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>
      <?php } ?>
    </ul>
    <?php } else { ?>
    <?php for ($i = 0; $i < count($categories);) { ?>
    <ul>
      <?php $j = $i + ceil(count($categories) / 4); ?>
      <?php for (; $i < $j; $i++) { ?>
      <?php if (isset($categories[$i])) { ?>
      <li><a href="<?php echo $categories[$i]['href']; ?>"><?php echo $categories[$i]['name']; ?></a></li>
      <?php } ?>
      <?php } ?>
    </ul>
    <?php } ?>
    <?php } ?>
  </div>
  <?php } ?>
<?#category_end?>

И Вуаля! :) вот результат: картинка

  • +1 2
Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

Делал как то.Не знаю именно это ли Вы  имели в виду

 

6226887f7a9a.jpg

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

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


  • 4 weeks later...
  • 1 month later...

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

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

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

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

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

Вхід

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

Вхід зараз

×
×
  • Створити...

Important Information

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