FineSites.ru – все о CMS OpenCart — Как добавить картинки при выводе списка подкатегорий в Ope…




Как добавить картинки при выводе списка подкатегорий в OpenCart

Published on 14 Август 2012, by serg
in OpenCart.

Приветствую вас, уважаемые сайтостроители и OpenCart-о колупатели

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

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

1. catalogcontrollerproductcategory.php после строк

1
2
3
4
5
foreach ($results as $result) {
                $data = array(
                    ‘filter_category_id’  => $result[‘category_id’],
                    ‘filter_sub_category’ => true    
                );

дописываем строки

1
2
3
4
5
if ($result[‘image’]) {
                    $image = $this->model_tool_image->resize($result[‘image’], $this->config->get(‘config_image_product_width’), $this->config->get(‘config_image_product_height’));
                } else {
                    $image = $this->model_tool_image->resize(‘no_image.jpg’, $this->config->get(‘config_image_product_width’), $this->config->get(‘config_image_product_height’));
                }

чуть ниже после

1
‘name’  => $result[‘name’] . ‘ (‘ . $product_total . ‘)’,

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

1
‘thumb’ => $image,

2. Теперь редактируем темплейт. На примере дефолтного :

в файле catalogviewthemedefaulttemplateproductcategory.tpl 

ищем

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?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 } ?>

и заменяем это все на

1
2
3
4
5
6
7
8
9
10
11
12
<?php if ($categories) { ?>
  <div class="box-product">
    <?php foreach ($categories as $category) { ?>
    <div>
 
      <div class="image"><a href="<?php echo $category[‘href’]; ?>"><img src="<?php echo $category[‘thumb’]; ?>" title="<?php echo $category[‘name’]; ?>" alt="<?php echo $category[‘name’]; ?>" /></a></div>
 
      <div class="name"><a href="<?php echo $category[‘href’]; ?>"><?php echo $category[‘name’]; ?></a></div>
    </div>
    <?php } ?>
  </div>
  <?php } ?>

Вот и все

 


http://finesites.ru/opencart/kak-dobavit-kartinki-pri-vy-vode-spiska-podkategorij-v-opencart

Губарь Маргарита Александровна