Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

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


Recommended Posts

Добрый день! Помогите, пожалуйста, вывести подкатегории картинками в Opencart 3.

 

В /catalog/controller/product/category.php перед 

$data['categories'][] = array

 добавила строчки:

 

if ($result['image']) {
                    $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_height'));
                } else {
                    $image = $this->model_tool_image->resize('placeholder.png',  $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_height'));
                }

 

В $data['categories'][] = array добавила

 

'thumb' => $image

 

В /template/extension/module/category.twig после

 

{% if categories %}
                <h3>{{ text_refine }}</h3>
                {% if categories|length <= 5 %}

 

добавила

 

{% for category in categories %}
     <li>
          {% if thumb %}
                <img src="{{ thumb }}" alt="{{ category.name }}" title="{{ category.name }}" class="img-2-thumbnail" />
          {% endif %}
          <a href="{{ category.href }}">{{ category.name }}</a>
    </li>
{% endfor %} 

Выводит картинки категории вместо картинок подкатегории. Что я делаю не правильно?

Link to post
Share on other sites

6 минут назад, greychatte сказал:

Добрый день! Помогите, пожалуйста, вывести подкатегории картинками в Opencart 3.

 

В /catalog/controller/product/category.php перед 


$data['categories'][] = array

 добавила строчки:

 


if ($result['image']) {
                    $image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_height'));
                } else {
                    $image = $this->model_tool_image->resize('placeholder.png',  $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_height'));
                }

 

В $data['categories'][] = array добавила

 


'thumb' => $image

 

В /template/extension/module/category.twig после

 


{% if categories %}
                <h3>{{ text_refine }}</h3>
                {% if categories|length <= 5 %}

 

добавила

 


{% for category in categories %}
     <li>
          {% if thumb %}
                <img src="{{ thumb }}" alt="{{ category.name }}" title="{{ category.name }}" class="img-2-thumbnail" />
          {% endif %}
          <a href="{{ category.href }}">{{ category.name }}</a>
    </li>
{% endfor %} 

Выводит картинки категории вместо картинок подкатегории. Что я делаю не правильно?

<img src="{{ category.thumb }}" alt="{{ category.name }}" title="{{ category.name }}" class="img-2-thumbnail" />
Link to post
Share on other sites
<img src="{{ category.thumb }}" alt="{{ category.name }}" title="{{ category.name }}" class="img-2-thumbnail" />

Делала и так, тогда вообще не выводит картинки - src пустой.

Link to post
Share on other sites

5 минут назад, greychatte сказал:

<img src="{{ category.thumb }}" alt="{{ category.name }}" title="{{ category.name }}" class="img-2-thumbnail" />

Делала и так, тогда вообще не выводит картинки - src пустой.

 

кеши чистили?

Link to post
Share on other sites

Да, кеш чистила.

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

Link to post
Share on other sites

4 минуты назад, greychatte сказал:

Да, кеш чистила.

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

 

Попробуйте очистить кеш модификаторов, возможно в category.php не дописались ваши правки

Link to post
Share on other sites

Еще вариант - если оборачиваю картинку в ссылку 

{% for category in categories %}
    <li>
        <a href="{{ category.href }}"><img src="{{ category.thumb}} " alt="{{ category.name }}" title="{{ category.name }}" class="img-responsive" /></a>
        <a href="{{ category.href }}">{{ category.name }}</a>
    </li>
{% endfor %}

тогда становится src="_"

Link to post
Share on other sites

1 час назад, spectre сказал:

 

Попробуйте очистить кеш модификаторов, возможно в category.php не дописались ваши правки

Очистила, теперь все еще хуже - изображение вообще не подтягиваются в подкатегории. Изменения в category.php делала и через Дизайн/редактор шаблона и через FTP - и ничего...

Link to post
Share on other sites

  • 1 month later...
В 27.10.2017 в 14:21, greychatte сказал:

Очистила, теперь все еще хуже - изображение вообще не подтягиваются в подкатегории. Изменения в category.php делала и через Дизайн/редактор шаблона и через FTP - и ничего...

так вы решение нашли?

Link to post
Share on other sites

  • 1 year later...
          <ul>
            {% for child in category %}
            <li>
               {% if child.thumb %}
                <img src="{{ child.thumb }}" alt="{{ child.name }}" title="{{ child.name }}" class="img-2-thumbnail" />
               {% endif %}
                <a href="{{ child.href }}">{{ child.name }}</a></li>
            {% endfor %}
          </ul>
'thumb'=> $this->model_tool_image->resize($result['image'], 80,80)

 

  • +1 1
Link to post
Share on other sites

файл catalog/controller/product/category.php

найти 

$data['categories'][] = array(
	'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),
);

и заменить на 


if ($result['image']) {
	$image = $this->model_tool_image->resize($result['image'], 100, 100);
} else {
	$image = $this->model_tool_image->resize('placeholder.png', 100, 100);
}
                                
                                
$data['categories'][] = array(
	'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),
    'thumb'       => $image
);

файл catalog/view/theme/ваш_шаблон/template/product/category.twig

найти 

{% for category in categories %}
   <li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endfor %}

и заменить на (ну или как у вас в дизайне там)

{% for category in categories %}
   <li><a href="{{ category.href }}">{{ category.name }}</a></li>
   <li><img src="{{ category.thumb }}" alt="{{ category.name }}" /></li>
{% endfor %}

 

Link to post
Share on other sites
  • 1 month later...
В 04.01.2019 в 11:11, 112rub сказал:

файл catalog/controller/product/category.php

найти 


$data['categories'][] = array(
	'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),
);

и заменить на 



if ($result['image']) {
	$image = $this->model_tool_image->resize($result['image'], 100, 100);
} else {
	$image = $this->model_tool_image->resize('placeholder.png', 100, 100);
}
                                
                                
$data['categories'][] = array(
	'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),
    'thumb'       => $image
);

файл catalog/view/theme/ваш_шаблон/template/product/category.twig

найти 


{% for category in categories %}
   <li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endfor %}

и заменить на (ну или как у вас в дизайне там)


{% for category in categories %}
   <li><a href="{{ category.href }}">{{ category.name }}</a></li>
   <li><img src="{{ category.thumb }}" alt="{{ category.name }}" /></li>
{% endfor %}

 

Кто пробовал такой способ на ocStore 3.0.2.0? Будет работать?

Edited by DeN221084
Link to post
Share on other sites

В 15.02.2019 в 21:58, DeN221084 сказал:

Кто пробовал такой способ на ocStore 3.0.2.0? Будет работать?

Да будет. 

Link to post
Share on other sites
  • 3 months later...
  • 2 months later...
В 04.01.2019 в 10:11, 112rub сказав:

файл catalog/controller/product/category.php

найти 


$data['categories'][] = array(
	'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),
);

и заменить на 



if ($result['image']) {
	$image = $this->model_tool_image->resize($result['image'], 100, 100);
} else {
	$image = $this->model_tool_image->resize('placeholder.png', 100, 100);
}
                                
                                
$data['categories'][] = array(
	'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),
    'thumb'       => $image
);

файл catalog/view/theme/ваш_шаблон/template/product/category.twig

найти 


{% for category in categories %}
   <li><a href="{{ category.href }}">{{ category.name }}</a></li>
{% endfor %}

и заменить на (ну или как у вас в дизайне там)


{% for category in categories %}
   <li><a href="{{ category.href }}">{{ category.name }}</a></li>
   <li><img src="{{ category.thumb }}" alt="{{ category.name }}" /></li>
{% endfor %}

 

Добрый день.

К сожалению, не получилось сделать.

Opencart 3.0.3.2, тема стандартная, картинки вставил, сделал как написано + очистка кэша и обновление модификаторов... Все осталось без изменений, 

Можете подсказать куда еще посмотреть? Заранее спасибо 

Link to post
Share on other sites

  • 5 weeks later...

Не работает вывод фото, кто решил проблему помогите!

 
Link to post
Share on other sites

  • 2 months later...

opencart 3.0.2 подкатегории картинками
В /catalog/controller/product/category.php перед
 
$data['categories'][] = array
добавил строчки:
 
if ($result['image']) {
$image = $this->model_tool_image->resize($result['image'], $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_height'));
} else {
$image = $this->model_tool_image->resize('placeholder.png', $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_width'), $this->config->get('theme_' . $this->config->get('config_theme') . '_image_category_height'));
}
 
В $data['categories'][] = array добавила
 
thumb' => $image
 
В /template/extension/module/category.twig после
{% for child in category %}
Добавил
<img src="{{ child.thumb }}" alt="{{ child.name }}" title="{{ child.name }}" class="img-2-thumbnail" />
Link to post
Share on other sites
  • 7 months later...

{% for category in categories %}
            <li><a href="{{ category.href }}"><img width="40" height="40" src="{{ category.thumb }}" alt="{{ category.name }}" />
            {{ category.name }}</a></li>
            {% endfor %}

Link to post
Share on other sites

23 часа назад, hovik сказал:

{% for category in categories %}
            <li><a href="{{ category.href }}"><img width="40" height="40" src="{{ category.thumb }}" alt="{{ category.name }}" />
            {{ category.name }}</a></li>
            {% endfor %}

не работает, вместо картинок маленькие квадратики появились белые примерно 5*5 мм

Link to post
Share on other sites

12 часов назад, Nata1987 сказал:

не работает, вместо картинок маленькие квадратики появились белые примерно 5*5 мм

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

Link to post
Share on other sites

  • 6 months later...
В 14.06.2020 в 23:23, hovik сказал:

{% for category in categories %}
            <li><a href="{{ category.href }}"><img width="40" height="40" src="{{ category.thumb }}" alt="{{ category.name }}" />
            {{ category.name }}</a></li>
            {% endfor %}

Прекрасно все отработало!!! Спасибо!!! Версия 3.0.2

Link to post
Share on other sites

В 28.12.2018 в 02:43, eprem99 сказал:

          <ul>
            {% for child in category %}
            <li>
               {% if child.thumb %}
                <img src="{{ child.thumb }}" alt="{{ child.name }}" title="{{ child.name }}" class="img-2-thumbnail" />
               {% endif %}
                <a href="{{ child.href }}">{{ child.name }}</a></li>
            {% endfor %}
          </ul>

'thumb'=> $this->model_tool_image->resize($result['image'], 80,80)

 

этот ответ правильный

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.