8 800 500-47-11
8 800 500-47-11
Отдел продаж
База знаний
  • Все решения
  • Интернет-магазины
    • Аспро: Премьер
    • Аспро: Лайтшоп
    • Аспро: Максимум
    • Аспро: Шины и диски 2.0
    • Аспро: Next
    • Аспро: Оптимус
    • Аспро: Шины и диски, интернет-магазин
    • Аспро: Маркет
    • Аспро: Интернет-магазин
    • Аспро: Крутой шоп
  • Корпоративные сайты
    • Аспро: Приорити 2.0
    • Аспро: Корпоративный сайт 3.0
    • Аспро: Корпоративный сайт 2.0
    • Аспро: Стройка 2.0
    • Аспро: Инжиниринг
    • Аспро: Металл
    • Аспро: Digital 2.0
    • Аспро: Детский сад и образовательный центр
    • Аспро: Курорт 2.0
    • Аспро: Ландшафт 2.0
    • Аспро: Автосервис
    • Аспро: Медицинский центр 3.0
    • Аспро: Ландшафт
    • Аспро: Медицинский центр 2.0
    • Аспро: Курорт
    • Аспро: Стройка
    • Аспро: Сайт медицинского центра
    • Аспро: Корпорация
    • Аспро: Корпоративный сайт
    • Аспро: Корпоративный сайт современной компании
    • Аспро: Приорити
    • Аспро: Digital
  • Модули
    • Аспро: Привязка ответственного
    • Аспро: Шинный калькулятор
    • Аспро: Кредитный калькулятор
    • Аспро: Универсальный импорт
  • 1С-Битрикс
    • Общее

Не фильтруются товары по цене со скидкой

ID статьи: 32 , создана 02 мар 2016
Актуально для:
Умный фильтр выдает товары по базовой цене без учета скидки. К примеру, если базовая цена товара – 5 600 р., а со скидкой – 5 391 р., то при фильтрации «Товары до 5 500 р.» умный фильтр его не показывает.

Решение

При фильтрации по цене Компонент Умный фильтр не учитывает скидки которые в данный момент применимы к товару. И фильтрация по цене осуществляется без учета скидок выставленных на данный момент. 

Решение «Аспро: Маркет» использует стандартный компонент умного фильтра 1С-Битрикс. Таким образом, проблема является особенностью работы платформы. Подтверждение проблемы на сайте 1С-Битрикс. По этой же ссылке вы можете оставить комментарий и проголосовать за то, чтобы в ядре системы исправили этот недочет.

Один из способов решения проблемы — скрыть из умного фильтра сортировку по цене и поставить сортировку по свойству, которое будет содержать минимальную цену с учетом скидки.

Для этого необходимо:

  1. Добавить новое свойство к товару «Цена».

  2. Вывести данное свойство в фильтр.

  3. Само свойство будет заполняться следующим образом: автоматически при изменении товара или изменении скидок в свойство будет записана минимальная цена с учетом скидок и наценок для неавторизованных пользователей с помощью API функций Битрикса.

Недостатки способа:

  1. Механизм работает некорректно, если на сайте существует несколько групп пользователей с разными скидками/наценками/типами цен.

  2. Свойство может обновляться некорректно при использовании скидок с ограниченным периодом действия (скидка уже закончилась, но товар фильтруется еще по старой цене).

При наличии соответствующих навыков в программировании и знаний 1С-Битрикс на уровне разработчика вы можете добавить и вывести свойство самостоятельно. Инструкция от разработчиков платформы как получить минимальную цену с учетом скидок и базовой валюты, далее при помощи событий OnAfterIBlockElementUpdate и OnDiscountUpdate данную минимальную цену нужно сохранить в созданное свойство для товара. 

Также вы можете обратиться в компанию «Аспро» или к сторонним разработчикам на 1С-Битрикс, которые смогут предложить решение данной проблемы.  


Юлия
05.10.2016 21:27:34
А до сих пор не исправлено это в механищме Битрикс? Проголосовать за исправление этого недочета - на указанном сайте - нельзя(