Автор Тема: Как привязать все картинки товара на странице категории  (Прочитано 43 раз)

21 Октябрь 2017, 19:43:19
  • Новичок
  • *
  • Сообщений: 9
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый день! Как сделать показ всех картинок товара в категории также как и в карточке товара?
22 Октябрь 2017, 10:59:55
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 14167
  • Репутация: +14571/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль Prestashop pictures on product listings показывает картинки в каталоге.

22 Октябрь 2017, 11:21:05
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 21057
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
1. Переопределить контроллер CategoryController.php, добавить в метод  getProduct выбор всех изображений
Product::getProductImages($id_product)и инициализацию переменных smarty
'sizeImg' => Image::getSize('тип изображения'),
'prodImgs' => ...
2. В product-list.tpl добавить эти переменные
{foreach from=$prodImgs item=prodImg name=prodImgs}
   <img src="{$link->getImageLink($product.link_rewrite, $prodImg.id_image,...
3. В файл стилей добавить новые правила css.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
22 Октябрь 2017, 18:31:04
Ответ #3
  • Новичок
  • *
  • Сообщений: 9
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля

Спасибо огромное! Не получается сделать из за Кривизны рук ))) Как это все прописать?
Я так понимаю что вот это: Product::getProductImages($id_product) нужно прописать 
здесь
// The hook was not executed, standard working
        if (!$hook_executed) {
            $this->context->smarty->assign('categoryNameComplement', '');
            $this->nbProducts = $this->category->getProducts(null, null, null, $this->orderBy, $this->orderWay, true);
            $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts"
            $this->cat_products = $this->category->getProducts($this->context->language->id, (int)$this->p, (int)$this->n, $this->orderBy, $this>orderWay);
            $this->Product::getProductImages($id_product);

Вот это 'sizeImg' => Image::getSize('тип изображения'),
'prodImgs' => ...
Здесь
$this->context->smarty->assign(array(
            'category'             => $this->category,
            'description_short'    => Tools::truncateString($this->category->description, 350),
            'products'             => (isset($this->cat_products) && $this->cat_products) ? $this->cat_products : null,
            'id_category'          => (int)$this->category->id,
            'id_category_parent'   => (int)$this->category->id_parent,
            'return_category_name' => Tools::safeOutput($this->category->name),
            'path'                 => Tools::getPath($this->category->id),
            'add_prod_display'     => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'),
            'categorySize'         => Image::getSize(ImageType::getFormatedName('category')),
            'mediumSize'           => Image::getSize(ImageType::getFormatedName('medium')),
            'thumbSceneSize'       => Image::getSize(ImageType::getFormatedName('m_scene')),
            'homeSize'             => Image::getSize(ImageType::getFormatedName('home')),
            'allow_oosp'           => (int)Configuration::get('PS_ORDER_OUT_OF_STOCK'),
            'comparator_max_item'  => (int)Configuration::get('PS_COMPARATOR_MAX_ITEM'),
            'suppliers'            => Supplier::getSuppliers(),
            'body_classes'         => array($this->php_self.'-'.$this->category->id, $this->php_self.'-'.$this->category->link_rewrite),
        ));

И Переменные в  product-list.tpl  куда вставлять?
{foreach from=$prodImgs item=prodImg name=prodImgs}
   <img src="{$link->getImageLink($product.link_rewrite, $prodImg.id_image,...
23 Октябрь 2017, 13:31:34
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 14167
  • Репутация: +14571/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Спасибо огромное! Не получается сделать из за Кривизны рук ))) Как это все прописать?
Сделать так как написал PrestaMan сложно, дело не в кривизне рук. Знать нужно очень хорошо php и prestashop
Для вас решение вопроса
Модуль Prestashop pictures on product listings показывает картинки в каталоге.
23 Октябрь 2017, 14:29:27
Ответ #5
  • Новичок
  • *
  • Сообщений: 9
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
25 Октябрь 2017, 11:23:37
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 14167
  • Репутация: +14571/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль дешевле, чем нанимать программиста.