Автор Тема: Вывод изображения товара в формате GIF  (Прочитано 16942 раз)

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Очень нужная вещь - отображение изображения товаров в формате GIF, но все картинки при загрузке конвертируются в JPG. Есть загрузка маленьких картинок  150х150 (которые выводятся в категориях) напрямую, НО опять же конвертируются в JPG. Как сделать, чтобы вот эти картинки 150х150 вида http://ваш_сайт/........-S.jpg оставались в исходном формате GIF при загрузки напрямую (при снятой галочке в "Подбор изображений из исходного")?

Версия 5.0.2.
Сайт rush-hours.net
« Последнее редактирование: Апреля 18, 2013, 11:21:41 am от Alex M »

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #1 : Апреля 18, 2013, 04:08:08 pm »
http://rush-hours.net/
Видите в колонке слева браслет крутиться? Очень красиво смотрится, но ведь весь товар туда не выставишь :) А вот если в каталоге изображения товара 150х150 пикселей будут анимированные - это просто шикарно смотрится :)

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #2 : Апреля 18, 2013, 04:10:16 pm »
Выложить файл на сервер - не проблема. Я и так его кинул вручную в каталог, чтобы вытащить в блок на главной странице, а вот как "в шаблоне подменть разнирение"?

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #3 : Апреля 23, 2013, 10:56:59 am »
pehser, спасибо за ответ.

Правда у меня ничего не получилось. У меня вообще нет в файле {$product_info.thumbnail}
а попытки применить исправления методом тыка не дали результата :)
все равно изображение в формате .gif конвентируется в .jpg при снятой галочке "Подбор изображений из исходного (вкл.):"

Вот исходный код моего файла product_brief.tpl.html

{* product brief view (from a category or search) *}
{if $product_info ne NULL}
{assign var="id" value=$product_info[11]}
<div style="position:relative;">
{if $product_info[18]==1}<div class="new"></div>{/if}
<a href="./{$product_info[13]}" class="s_img" title="{$product_info[1]|replace:'"':'&quot;'}">{if $product_info[10] > 0 && $product_info[10] > $product_info[4] && $product_info[4] > 0}<span>-{$product_info[27]}%</span>
{/if}{if $product_info[7] || $p_default[$id]}<img id="dp{$product_info[11]}" src="./products_pictures/{if $p_default[$id]}{$p_default[$id]}-S.jpg{else}{$product_info[7]}{/if}" alt="{$product_info[1]|replace:'"':'&quot;'}" />{assign var="pict" value=$product_info[7]}
{else}<img id="dp{$product_info[11]}" src="./css/css_efashion/image/nophoto.jpg" alt="No photo" width="150px" height="150px" />{assign var="pict" value='./css/css_efashion/image/nophoto.jpg'}{/if}</a>
</div><br />
<a href="./{$product_info[13]}">{$product_info[1]}</a>
<div class="descr">{$product_info[2]}</div>
<div class="pprice"><b>{$product_info[24]}</b></div>
{if $product_info[28]>0}<a id="tocart_{$product_info[11]}" class="ajaxcart button" href="./add2cart/{$product_info[14]}"><span>{$smarty.const.ADD_TO_CART_STRING}</span></a>
{/if}
{/if}

Может подскажете где и какие внести изменения?

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #4 : Апреля 23, 2013, 12:44:30 pm »
Напомню, что речь идет о версии 5.0.2
в общем, насколько я понял, за вывод изображения отвечает вот этот код:
src="./products_pictures/{if $p_default[$id]}{$p_default[$id]}-S.jpg{else}{$product_info[7]}{/if}"

заменил jpg на gif - не работает.
можно заменить {$product_info[7]} на {$product_info[7]|replace:'.jpg':'.gif'}
но тогда все картинки в формате jpg становятся не доступны. Кто подскажет, как сделать, чтобы по умолчанию выводился gif, но если его нет, то выводится jpg?

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #5 : Апреля 25, 2013, 08:52:44 pm »
Заменил. Не работает.
Кстати, в двух местах (во второй и четвертой строчке после gif') лишние скобки ]
с ними вообще ошибка вылетала, убрал - ошибка пропала, но и замена jpg на gif не происходит.

Логика тут должна быть с проверкой условия: если нет файла с расширение jpg, то подставить gif.

Тогда картинки загружаем обычным способом, а потом загружаем на сервер картинку с таким же названием -S только в формате gif и удаляем jpg. Код распознает что картинки jpg нет и подставляет gif.

Я не программист и поэтому не знаю, что делает вторая строчка, но в третей, судя по всему, идет проверка условия. Там где-то ошибка, раз она не работает.
« Последнее редактирование: Апреля 25, 2013, 08:55:57 pm от Alex M »

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #6 : Апреля 29, 2013, 05:36:35 pm »
Попробовал. Что-то ни каких изменений. Не работает :(

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #7 : Мая 06, 2013, 03:23:34 pm »
Неужели остается только мечтать? :(

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #8 : Мая 08, 2013, 11:21:52 pm »
Отправил на e-mail

Оффлайн Alex M

  • Спец
  • ***
  • Сообщений: 109
    • Просмотр профиля
Re: Вывод изображения товара в формате GIF
« Ответ #9 : Мая 12, 2013, 10:33:18 am »
Спасибище огромное!!! Насколько я понял, не надо удалять "родной" файл в формате JPG. Если его удалить, то выскакивает "нет фото". Надо просто к существующему файлу JPG добавить с таким же названием, только в формате GIF. И тогда получаем анимацию. Исправлять что-нибудь пришлось? Может это еще кому пригодится, ведь штука классная.

Размер моей благодарности безграничен, но в пределах разумного :)
(как только получу вебмани, так сразу скину).

Кому интересно посмотреть на результат, гляньте эту страницу http://rush-hours.net/catalog/sotovye-telefony/
особенно здорово смотрится прозрачный анимированный ярлык "новинка" на анимированном фото товара в нижнем левом углу :)
« Последнее редактирование: Мая 28, 2013, 02:05:15 pm от Alex M »