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

[Решено] Слайдер фоток товара в категории товара. Как подрезать большие фото?


Recommended Posts

Правлю макет категории.

 

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

 

1. Правил файл: /catalog/controller/product/category.php

 

В 196 строке 

$this->data['products'][] = array(
'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
'percent'  => round((($result['price'] - $result['special'])/$result['price'])*100, 0),
'product_id'  => $result['product_id'],
'thumb'       => $image,
'imgs'    => $this->model_catalog_product->getProductImages($result['product_id']), //добавил это
'name'        => $result['name'],
'model'        => $result['model'],
'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
'price'       => $price,
'special'     => $special,
'tax'         => $tax,
'rating'      => $result['rating'],
'reviews'     => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
'href'        => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'])
);

2. Правил файл: /catalog/view/theme/shablon/template/product/category.php

 

В ~65-66 строке формируется блок с фоткой товара.  Я далее сделал формирование доп. фоток товара. Они все вывелись. Слайдер работает. Но выводятся доп. фотки все исходного размера...

 

Как мне использовать функции opencart подрезки фоток?   

 

 

<div class="image"><a href="<?php echo $product['href']; ?>" class="sliddes"> <!-- добавил class, по которому будет вызываться слайдер-->
<img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /> <!-- основная фотка товара --> 
      
<!-- ниже пошел мой код-->
        <?php $i = 0; 
        foreach ($product['imgs'] as $imgs) { $i++;?>
        <img width="200px" height="300px" style="display: none;margin-left:12px;" id="<?php echo $product['model']; ?>_<?php echo $i; ?>" src="/image/<?php echo $imgs['image']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" />
        
        <?php } ?>
</a></div>

<!-- конец моего кода-->
Надіслати
Поділитися на інших сайтах


В контроллере есть такое, думаю как модифицировать: 

 

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 = false;

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


Все разобрался: 

 

В контроллере:

'imgs'  => $this->model_catalog_product->getProductImages($result['product_id']), //добавил это

В шаблоне :

 

 

 
        
<?php $i = 0; 
        foreach ($product['imgs'] as $imgs) { $i++;?>
        <img width="200px" height="300px" style="display: none;margin-left:12px;" id="<?php echo $product['model']; ?>_<?php echo $i; ?>" src="<?php echo $this->model_tool_image->resize($imgs['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')); ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" />
        
        <?php } ?>
Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

Вхід зараз
×
×
  • Створити...

Important Information

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