Автор Тема: Картинки товаров в результатах быстрого поиска в Prestashop 1.5.5.0  (Прочитано 3668 раз)

04 Сентябрь 2013, 17:33:06
Ответ #15
  • Фрилансер
  • *
  • Сообщений: 181
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Я тоже не программист, но посмотрел файлы, там $link->getImageLink везде без JPG.


Я говорил про решение от mAgency: "-small_default.jpg\" c JPG

А в коде от Coder указано 'размер картинки'. Т.е., подставляем только small_default? А результат в его решение будет с JPG?

У меня версия 1.5.4.1, я добавил в класс Search.php
Автор: mAgency
LEFT JOIN `'._DB_PREFIX_.'image` im ON  (p.`id_product` = im.`id_product`AND `cover` = 1)а в шаблон поиска blocksearch-instantsearch.tpl
Автор: coder
return "<img src=\"{$link->getImageLink('" + data.prewrite + "', '" + data.image + "', 'размер картинки')}\" />" + value;Картинки показывает.

Я попробовал и Вашу комбинацию - на 1.5.5.0 не работает! На 1.5.4.1, как я писал работает от mAgency (проверял) и Ваш вариант (наверно - не проверял).

Наверно нет смысл обсуждать, что у кого-то работает на 1.5.4.1. Скажите лучше, какой вариант у кого работает реально на 1.5.5.0 (что обозначено в топике). И тогда будем его тестить.
04 Сентябрь 2013, 21:49:26
Ответ #16
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
Проверил на prestashop 1.5.5
Работает, мнгновенный поиск в шапке с картиками.
Проблемы на вашем сайте, что-то не правильно настроено.
В классе Seach.php, линия 281
if ($ajax)
{
$sql = 'SELECT DISTINCT p.id_product, pl.name pname, cl.name cname,
cl.link_rewrite crewrite, pl.link_rewrite prewrite, i.id_image image '.$score.'
FROM '._DB_PREFIX_.'product p
INNER JOIN `'._DB_PREFIX_.'product_lang` pl ON (
p.`id_product` = pl.`id_product`
AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').'
)
'.Shop::addSqlAssociation('product', 'p').'
INNER JOIN `'._DB_PREFIX_.'category_lang` cl ON (
product_shop.`id_category_default` = cl.`id_category`
AND cl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('cl').'
)
LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = p.`id_product`)'.
Shop::addSqlAssociation('image', 'i', true, 'image_shop.cover=1').'
WHERE p.`id_product` '.$product_pool.'
ORDER BY position DESC LIMIT 10';
return $db->executeS($sql);
}
В модуле /modules/blocksearch/blocksearch-instantsearch.tpl линия 75
return "<img src=\"{$link->getImageLink('" + data.prewrite + "', '" + data.image + "', 'small_default')}\" />" + value;
04 Сентябрь 2013, 23:33:28
Ответ #17
  • Фрилансер
  • *
  • Сообщений: 181
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Проверил на prestashop 1.5.5

Большое спасибо coder-у! Наконец-то предложенный в этом посте вариант заработал на 1.5.5! Спасибо также mAgency и другим, принявшим участие в данном вопросе.

ОДНО ВАЖНОЕ ЗАМЕЧАНИЕ: Данное решение у меня заработало только, когда изменения были сделаны в файле: \modules\blocksearch\blocksearch-instantsearch.tpl

Данное решение не работало, если делать изменения в файле, расположенном в своем шаблоне, т.е.

\themes\МОЯ ТЕМА\modules\blocksearch\blocksearch-instantsearch.tpl

В этом случае показывались пустые квадратики вместо картинок. Не знаю, это проблема PS 1.5.5.0 или кода, но это надо учесть.

Мой шаблон, кстати, просто копия шаблона по умолчанию  default.



Не сочтите за нахальство, а по аналогии можно выложить решения для показа изображений при добавлении аксессуаров к товару (Каталог-Товары-Привязки) и добавление товара к заказу (Заказы-Заказы-Добавить товар).

Я также сделал у себя показ картинок товаров в AJAX корзине для 1.5.5.0. Готовое решение (файлы) выложу через пару минут в посте (см. далее).

Все работает классно - за исключением небольшой проблемы, описанной в посте http://prestashop-forum.ru/index.php?action=post;topic=1227.0;last_msg=5798 .

Пожалуйста, примите участие в этом тоже, чтобы магазины были удобны!
05 Сентябрь 2013, 12:26:57
Ответ #18
  • Старожил
  • ****
  • Сообщений: 274
  • Репутация: +3/-0
    • Просмотр профиля
Вы задаете вопросы на форуме prestashop.com.
Пишите там о найденых решениях.
В таком случае, нужно давать ссылку на этот форум.
Некрасиво получается.
05 Сентябрь 2013, 13:15:25
Ответ #19
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
Цитата: -SiGi-
Вы задаете вопросы на форуме prestashop.com.
Пишите там о найденых решениях.
В таком случае, нужно давать ссылку на этот форум.
Некрасиво получается.
Ты думаешь, что все указывают источник?
Скинь ссылку, почитаю, как там написано.