Автор Тема: Выбор цвета в фильтре (основная комбинация товара такого же цвета и в каталоге)  (Прочитано 1908 раз)

29 Июнь 2015, 12:55:18
Ответ #15
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
Как указать  id_image с требуемым цветом?
По ид выбранного фильтра
Product::getCombinationImageById($id_product_attribute, $id_lang)

Можно задать последний вопрос, как получить код цвета выбранный в blocklayered?
29 Июнь 2015, 13:35:16
Ответ #16
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Смотрите метод getSelectedFilters() класса BlockLayered.
Tools::getValue('selected_filters')Код цвета не получите. Передается ид атрибута. А код потом получают из базы.
02 Июль 2015, 10:06:44
Ответ #17
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
02 Июль 2015, 10:44:49
Ответ #18
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль Advanced search 4. В нем можно делать разные формы фильтрации и шаблоны вывода. 
02 Июль 2015, 11:19:11
Ответ #19
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Готового нет. Можно самому сделать.
1. Добавить в контроллер /controllers/front/CategoryController.php новую переменную smarty combination_images.
$this->context->smarty->assign('combination_images', $combination_images);2. В переменной combination_images сохранить изображения комбинаций
$combination_images = $product->getCombinationImages($this->context->language->id); 3. Добавить js функцию смены изображения при выборе фильтра (#/название фильтра в URL).
$('.replace-2x').attr('src' : 'новый адрес изображения');
02 Июль 2015, 12:36:41
Ответ #20
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
Нужная функция. Жаль что в престе не реализовали. Можно сделать и на github выложить.
02 Июль 2015, 15:02:38
Ответ #21
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль Advanced search 4. В нем можно делать разные формы фильтрации и шаблоны вывода.

Интересный модуль.
На просторах интернета нашёл версию Advanced Search 4_v4.10.4_rus.zip

Требуемый функционал работает, однако смущают ссылки такого вида:
#s[4][]:94&s[3][]:72&ash[3][]:72&rg:&sid:1&h:leftColumn&ics:5

Как их можно сделать более удобоваримыми?
использую nginx
02 Июль 2015, 15:05:37
Ответ #22
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Возникает вопрос зачем? Результаты поиска нужно закрывать от поисковиков. Поэтому и ссылки не переделать нужно а закрыть в robots.txt.
02 Июль 2015, 15:20:58
Ответ #23
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
02 Июль 2015, 15:22:45
Ответ #24
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В справке модуля написано, что чпу не предусмотрено.

Вот демо на работу модуля. Посмотрите на получаемые ссылки...
http://addons.prestashop.com/demo/FO1615.html
02 Июль 2015, 15:31:10
Ответ #25
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
На аддоне фрейм реальные ссылки не видно. Вот на сайте продажи модуля
http://demos.presta-module.com/advancedsearch4/fr/#s[4][]:22&s[5][]:&s[6][]:&s[7][]:&rg:&sid:3&h:home
02 Июль 2015, 15:33:47
Ответ #26
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
30 Июль 2015, 15:23:29
Ответ #27
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Столкнулся с интересной особенностью модуля Модуль Advanced search 4
Не могу вывести атрибут "цвет" на странице категорий

В шаблоне product-item.tpl значение у $product.color_list у всех товаров пустое.
Никто не сталкивался с подобной проблемой?
30 Июль 2015, 15:38:06
Ответ #28
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
В техподдержку модуля написать нужно. Поддерджка вменяемая, отвечают и могут подсказать в чем проблема.
03 Август 2015, 13:21:45
Ответ #29
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Готового нет. Можно самому сделать.
1. Добавить в контроллер /controllers/front/CategoryController.php новую переменную smarty combination_images.
$this->context->smarty->assign('combination_images', $combination_images);2. В переменной combination_images сохранить изображения комбинаций
$combination_images = $product->getCombinationImages($this->context->language->id); 3. Добавить js функцию смены изображения при выборе фильтра (#/название фильтра в URL).
$('.replace-2x').attr('src' : 'новый адрес изображения');

При выборе цвета в фильтре.
Вся обработка происходит в blocklayered-ajax.php
а именно $blockLayered->ajaxCall();

Отбор производится в blocklayered.php  здесь
public function getProducts($selected_filters, &$products, &$nb_products, &$p, &$n, &$pages_nb, &$start, &$stop, &$range)
   {
      global $cookie;

      $products = $this->getProductByFilters($selected_filters);

Возможно стоит добавить в $products информацию о $selected_filters
и в tpl уже выводить изображение?