Перейти к содержанию
tim21701

[How-To] Реальное разрешение фото Товара

Рекомендуемые сообщения

Отображаем фотографии товара в оригинальном разрешении.
(маленькие изображения не будут растягиваться под указанные в настройках 500х500)

Откройте файл catalog/controller/product/product.php и найдите строку:

$this->data['popup'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height'));

Замените её на эту:

$this->data['popup'] = 'image/' . $product_info['image'];

Чуть ниже (в этом же файле) найдите строку:

'popup' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height')),

Замените её на эту:

'popup' => 'image/' . $result['image'],

Пример:

Фото товара ДО:

3291755.png

и ПОСЛЕ:

3015857.png

  • +1 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Долго искал, очень выручили. Спасибо огромное!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, у меня большие картинки как сделать что бы изображения отображались на, к примеру, 15% меньше от оригинала ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, у меня большие картинки как сделать что бы изображения отображались на, к примеру, 15% меньше от оригинала ?

Поздновато, конечно, но т.к. тема хорошая то подыму её.

Если большие картинки, то рекомендую сменить дефолный на Colorbox на Lytebox.

Пример работы ресайза тут: http://id77.ru/index.php?route=product/product&path=236_180&product_id=442

 

Качаем Lytebox кидаем в корень магазина, потом в

catalog/view/theme/ваша_тема/template/common/header.tpl

подключаем между <head> и </head>

<script type="text/javascript" language="javascript" src="lytebox.js"></script>
<link rel="stylesheet" href="lytebox.css" type="text/css" media="screen" />

далее ищем в

catalog/view/theme/ваша_тема/template/product/product.tpl

class = 'cloud-zoom colorbox'

и меняем на

class="lytebox" data-lyte-options="group:vacation"

примерно так...

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, у меня большие картинки как сделать что бы изображения отображались на, к примеру, 15% меньше от оригинала ?

в файле

/catalog/view/javascript/jquery/colorbox/jquery.colorbox.js

устанвливаем

maxWidth: "95%",

maxHeight: "95%",

 

там же можно и перевести надпись «image» в фото или картинка, prev, next

 

ЗЫ лучше поздно, чем никогда :)

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Поздновато, конечно, но т.к. тема хорошая то подыму её.

Если большие картинки, то рекомендую сменить дефолный на Colorbox на Lytebox.

Пример работы ресайза тут: http://id77.ru/index.php?route=product/product&path=236_180&product_id=442

 

Качаем Lytebox кидаем в корень магазина, потом в

catalog/view/theme/ваша_тема/template/common/header.tpl

подключаем между <head> и </head>

<script type="text/javascript" language="javascript" src="lytebox.js"></script>
<link rel="stylesheet" href="lytebox.css" type="text/css" media="screen" />

далее ищем в

catalog/view/theme/ваша_тема/template/product/product.tpl

class = 'cloud-zoom colorbox'

и меняем на

class="lytebox" data-lyte-options="group:vacation"

примерно так...

 

Почему то не могу найти class = 'cloud-zoom colorbox' не подскажите, в чем дело?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите пожалуйста решения для Ocstore 2.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для OcStore 2.3.0.2.3

 

В файле catalog/controller/product/product.php

 

Находим строку

$data['popup'] = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_popup_width'), $this->config->get($this->config->get('config_theme') . '_image_popup_height'));

и меняем на

$data['popup'] = $this->data['popup'] = 'image/' . $product_info['image'];

В этом же файле ниже находим строку

'popup' => $this->model_tool_image->resize($result['image'], $this->config->get($this->config->get('config_theme') . '_image_popup_width'), $this->config->get($this->config->get('config_theme') . '_image_popup_height')),

и меняем на

'popup' => 'image/' . $result['image'],

Обновляем модификаторы шаблона при необходимости

 

Изменено пользователем vpvs
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От tim21701
      Часто задают этот вопрос, что бы не скидывать всем ссылки - вывожу её в отдельную тему.

      =========================================================================
      -----------------НЕ ЗАБЫВАЕМ ПРО РЕЗЕРВНОЕ КОПИРОВАНИЕ ФАЙЛОВ!-----------------
      =========================================================================

      Итак, открываем файл: catalog/view/theme/ВАША_ТЕМА/stylesheet/stylesheet.css и находим строки:
      #menu { background: #585858; border-bottom: 1px solid #000000; height: 37px; margin-bottom: 15px; -webkit-border-radius: 5px 5px 5px 5px; -moz-border-radius: 5px 5px 5px 5px; -khtml-border-radius: 5px 5px 5px 5px; border-radius: 5px 5px 5px 5px; -webkit-box-shadow: 0px 2px 2px #DDDDDD; -moz-box-shadow: 0px 2px 2px #DDDDDD; box-shadow: 0px 2px 2px #DDDDDD; padding: 0px 5px; } Добавляем туда строку (в любое место):
      text-align:center; Чуть ниже, (в этом же файле) находим:
      #menu ul { list-style: none; margin: 0; padding: 0; } Меняем на эти строки:
      #menu ul { list-style: none; margin:auto; padding: 0; display:inline-block; margin-bottom:-4px; text-align:left; } До:

      После:

      Расширяем возможности горизонтального меню...
       
    • От tim21701
      Если кому пригодится, то вот способ - как разместить на главной странице любой модуль.
      (для примера я взял три модуля; "Рекомендуем", "Хиты продаж" и "Слайд-шоу".)

      Вот результат:




      Итак, открываем файл catalog/controller/common/home.php и находим строку:
       
      $this->children[] = 'common/header'; Добаваляем после неё то - что хотим видеть на главной:
       
      $this->children[] = 'module/featured';$this->children[] = 'module/bestseller';$this->children[] = 'module/sidebarslideshow'; Далее, открываем catalog/view/theme/default/template/common/home.tpl и находим:
       
      <?php foreach ($modules as $module) { ?><?php echo ${$module['code']}; ?><?php } ?> И ниже добавляем своё:
       
      <?php echo $featured; ?><?php echo $bestseller'; ?><?php echo $sidebarslideshow'; ?> Затем, открываем catalog/view/theme/default/stylesheet/stylesheet.css и вместо блока (он в самом низу):
       
      #content .middle .box {float: left;margin: 0 6px 10px 6px;min-height: 0px;}#content .middle .box .middle {width: 158px;min-height: 0px;} Ставим свой:
       
      #content .box {float: left;margin: 0 6px 10px 6px;min-height: 0px;}#content .box .middle {width: 158px;min-height: 0px;} Таким способом, можно продублировать любой модуль на главной странице.
       
    • От tim21701
      Итак, если Вы не установили изображение для Категории товаров, берём случайное (из товара) и выводим его...

      Пример:



      Для этого, открываем /catalog/controller/product/category.php и находим строки:
       
      if ($category_info['image']) {$image = $category_info['image'];} else {$image = '';} После них, вставляем:

      if ($category_info['image']) {$image = $category_info['image'];} else {$image = '';// Use random image from products in the category$rndImgQry = "SELECT p.image AS image FROM product AS p JOIN product_to_category AS c ON p.product_id = c.product_id ". "WHERE c.category_id = " . $category_info['category_id'] . " AND p.image NOT LIKE 'no_image.jpg'";$rndImgRslt = mysql_query($rndImgQry) or die (mysql_error());if (mysql_num_rows($rndImgRslt) > 0){$imgRows = array();while($imgRow = mysql_fetch_array($rndImgRslt)){$imgRows[] = $imgRow['image'];}$image = $imgRows[array_rand($imgRows)];}} Ниже, находим блок:

      if ($result['image']) {$image = $result['image'];} else {$image = 'no_image.jpg';} После него вставляем:

      if ($result['image']) {$image = $result['image'];} else {$image = 'no_image.jpg';// Use random image from products in the category$rndImgQry = "SELECT p.image AS image FROM product AS p JOIN product_to_category AS c ON p.product_id = c.product_id ". "WHERE c.category_id = " . $result['category_id'] . " AND p.image NOT LIKE 'no_image.jpg'";$rndImgRslt = mysql_query($rndImgQry) or die (mysql_error());if (mysql_num_rows($rndImgRslt) > 0){$imgRows = array();while($imgRow = mysql_fetch_array($rndImgRslt)){$imgRows[] = $imgRow['image'];}$image = $imgRows[array_rand($imgRows)];}} Всё.
       
    • От tim21701
      Если Вы хотите, что бы на странице товара, при нажатии на вкладки "Описание", "Фото", "Отзывы", "Рекомендуем" они открывались "плавно" (эффект fade),
      откройте файл catalog/view/javascript/jquery/tab.js и найдите строку:
       
      $($(this).attr('tab')).css('display', 'block'); Добавьте ПЕРЕД ней эту:
       
      $($(this).attr('tab')).fadeIn(); Сохраните и посмотрите что получилось.
       
    • От tim21701
      Для любителей отображения меню списком "дерево" в стиле Windows XP, предлагаю такой вариант:



      Используемые значки:

      В модуле нет заменяемых файлов, только новые.
      Установка: Копируем папки из архива и включаем меню в админке.

      Внимание.
      Данный мод не заменяет основное меню Категорий, у Вас появится ещё одно меню с Категориями!
      (Которое можно использовать как дополнительное... Если захотите отставить только его - отключите "Основное").

      Tree Category.zip
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.