Автор Тема: Вместо картинок с товар,отображаются знаки вопроса  (Прочитано 2714 раз)

09 Июнь 2014, 18:04:01
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Вместо картинок товара, отображаются знаки вопроса на главной странице в блоке "новые товары".

Когда смотреть все новые товары http://site.ru/new-products.php - фото товаров есть. На подробной странице товара - тоже есть. А вот на главной - знаки вопроса. При наведении Firebugom на место где должна быть картинка высвечивается окно и под ним 125*125 и фото нет. В админке вот такие настройки изображений.

В чем может быть проблема? Как исправить? Заранее благодарен.
09 Июнь 2014, 18:09:57
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
Проверяй модули, которые показывают товары на главной. В шаблоне должен быть указан формат изображения. Потом нужно перегенерировать изображения для этого размера. Обычно это home_defaut.
09 Июнь 2014, 18:14:45
Ответ #2
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Вот код блока "новые товары". В нем нигде не встречается 125 цифра...

<!-- MODULE Block new products -->
<div id="new-products_block_right" class="block products_block">
<h4><a href="{$base_dir}new-products.php" title="{l s='New products' mod='blocknewproducts'}">{l s='New products' mod='blocknewproducts'}</a></h4>
<div class="block_content">
{if $new_products !== false}
<ul class="product_images clearfix">
{foreach from=$new_products item='product' name='newProducts'}
{if $smarty.foreach.newProducts.index < 2}
<li{if $smarty.foreach.newProducts.first} class="first"{/if}><a href="{$product.link}" title="{$product.legend|escape:html:'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'medium')}" height="{$mediumSize.height}" width="{$mediumSize.width}" alt="{$product.legend|escape:html:'UTF-8'}" /></a></li>
{/if}
{/foreach}
</ul>
<dl class="products">
{foreach from=$new_products item=newproduct name=myLoop}
<dt class="{if $smarty.foreach.myLoop.first}first_item{elseif $smarty.foreach.myLoop.last}last_item{else}item{/if}"><a href="{$newproduct.link}" title="{$newproduct.name|escape:html:'UTF-8'}">{$newproduct.name|strip_tags|escape:html:'UTF-8'}</a></dt>
{if $newproduct.description_short}<dd class="{if $smarty.foreach.myLoop.first}first_item{elseif $smarty.foreach.myLoop.last}last_item{else}item{/if}"><a href="{$newproduct.link}">{$newproduct.description_short|strip_tags:'UTF-8'|truncate:50:'...'}</a>&nbsp;<a href="{$newproduct.link}"><img alt=">>" src="{$img_dir}bullet.gif"/></a></dd>{/if}
{/foreach}
</dl>
<p><a href="{$base_dir}new-products.php" title="{l s='All new products' mod='blocknewproducts'}" class="button_large">{l s='All new products' mod='blocknewproducts'}</a></p>
{else}
<p>{l s='No new products at this time' mod='blocknewproducts'}</p>
{/if}
</div>
</div>
<!-- /MODULE Block new products -->


И зачем перегенерировать изображения, если я добавляю новые товары после изменения в настройках размеров изображений. Для старых товаров - нужно перегенерировать, а новые товары которые добавляются уже должны добавляться с размерами указанными в настройках изображений. Или не так?
09 Июнь 2014, 18:28:43
Ответ #3
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
Там и должно встречаться 125 или другие цифры. В шаблоне указан размер изображений - medium.
Проверяй в php файле модуля, какой размер присваивается переменным шаблона. Должно быть примерно так
'mediumSize' => Image::getSize(ImageType::getFormatedName('medium')),
Обычно все говорят, что "ничего не делал", а изображения пропали. Так не бывает. Самое простое решение - перегенерировать изобрадежения, очистить кеш. В 99% помогает.
09 Июнь 2014, 18:35:19
Ответ #4
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Строка о которой Вы говорите - есть :

$smarty->assign(array('new_products' => $newProducts, 'mediumSize' => Image::getSize('medium')));
Я не говорю что ничего не делал. Месяц назад поменял в настройках изображений размеры и перегенерировал все картинки. А сегодня добавил два новых товара и обнаружил проблему. Не пойму почему она возникает, ведь при добавлении новых изображений они должны уже автоматом загружаться с новыми размерами. На моем скриншоте medium = 80*80 пикселей. Тем более что в шаблоне размер указан не напрямую, а через medium. Если я правильно понимаю, то после загрузки, картинка должна автоматически стать размером 80*80 и корректно выводится в блоке "новых товаров". Просто раньше она была 125*125, а сейчас 80*80. Я ведь добавляю новый товар. Или не так?
09 Июнь 2014, 19:55:56
Ответ #5
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Автоматически будет сделан ресайз картинки, если в вас отмечено использовании размера medium для товаров.
09 Июнь 2014, 20:19:02
Ответ #6
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Уже и картинки перегенерировал и кеш очистил - все равно не помогло... Можете подсказать в чем может быть проблема и как ее исправить?
20 Февраль 2015, 20:56:03
Ответ #7
  • Фрилансер
  • *
  • Сообщений: 194
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Проблема с вставкой картинок в страницы.

Тоже знаки вопроса. Если выключить чпу - то вечная загрузка .

Кэш очистил
21 Февраль 2015, 12:27:31
Ответ #8
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В редакторе картинку видно? Когда вставляте на страницу в коде какой путь?
22 Февраль 2015, 00:14:01
Ответ #9
  • Фрилансер
  • *
  • Сообщений: 194
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В папке img/cms  почему-то лежал фаил .htaccess   .

Я его удалил и всё заработало.