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

[Решено {кеш модификаторов}] Вывод подкатегорий картинками


lucky7

Recommended Posts

Здравствуйте. Хочу сделать вывод подкатегорий картинками . Использую Opencart 2.0.2 с темой coloring. Вношу изменения в файлы \shop\catalog\view\theme\coloring\template\product\category.tpl  и  \shop\catalog\controller\product\category.php

Вот они (в части изменений)

category.php

 

$data['categories'] = array();
 
$results = $this->model_catalog_category->getCategories($category_id);
 
foreach ($results as $result) {
$filter_data = array(
'filter_category_id'  => $result['category_id'],
'filter_sub_category' => true
);
if ($result['image']) {
$caimage = $this->model_tool_image->resize($result['image'], 100, 100);
}
else {
$caimage = $caimage = $this->model_tool_image->resize('no_image.png', 100, 100);
}
$data['categories'][] = array(
'name' => $result['name'],
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url),
'image' => $caimage,
);
}
 
 
category.tpl
 
<?php if ($categories) { ?>
      <h3><?php echo $text_refine; ?></h3>
      <div class="row">
        <div class="subcats">
          <ul>
            <?php foreach ($categories as $category) { ?>
            <li class="col-sm-3">
            <a href="<?php echo $category['href']; ?>">
            <img src="<?php echo $category['image']; ?>" alt="<?php echo $category['name']; ?>" />
            <?php echo $category['name']; ?>
            </a>
                       </li>
            <?php } ?>
          </ul>
        </div>
      </div> 
      <?php } ?>
 
Проблема в том что картинки не выводятся, а только названия. Вместо картинок ошибка
 
Как решить эту проблему с выводом картинок? Заранее благодарен.

 

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


У меня вот так всё отлично работает:

Контроллер:
 

if ($result['image']) {
$caimage = $this->model_tool_image->resize($result['image'], 100, 100);
}
else {
$caimage = $this->model_tool_image->resize('no_image.png', 100, 100);
}


$data['categories'][] = array(


'short_description' => substr(strip_tags(html_entity_decode($result['description'])),0,350). "...",
'name' => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url),
'image' => $caimage
);
}

 

Вывод:

<img src="<?php echo $category['image']; ?>"
Змінено користувачем mazein
Надіслати
Поділитися на інших сайтах

Сделал по вашему примеру, но опять та же самая ошибка

<img src="<b>Notice</b>: Undefined index: image in <b>E:\server1\OpenServer\domains\shop\catalog\view\theme\coloring\template\product\category.tpl</b> on line <b>23</b>"
           

Картинки не выводятся        

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


/system/storage/modification/catalog/controller/product/category.php
/system/storage/modification/catalog/view/theme/coloring/template/product/category.tpl

 такие файлы есть? в них правили?

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

нет, я правил в основной директории \shop\catalog\view\theme\coloring\template\product\category.tpl 

и  \shop\catalog\controller\product\category.php

А надо было в system что-ли?

У меня есть файлы о которых вы написали, только они не в storage.   Директории storage у меня нет. 

Есть такие shop\system\modification\catalog\controller\product\category.php

shop\system\modification\catalog\view\theme\coloring\template\product\category.tpl 

 

Сейчас попробую в них поправить

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


Не надо там ничё править.

В админке Менеджер дополнений - кнопка "обновить"

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

Спасибо всем, кто помогал! Я разобрался. Просто вручную прописал в shop\system\modification\catalog\controller\product\category.php то же самое что в основном контроллере, и все заработало.

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


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

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

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

И больше не вносить изменения в файлы кэша.

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

Да, нашел как обновить кэш. В opencart 2.0.2 это делается во вкладке Модификаторы. После внесения правок в файлы сайта, необходимо во вкладке модификаторы в верхнем правом углу нажать "Очистить", а затем "Обновить", и все обновляется нормально, без правок вручную.

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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