Тема: Несколько значений характеристик - Тип число

Можно ли вводить несколько значений характеристик с Типом число.
Через какой-то разделитель, например ; или /

Поясню. У меня в магазине будет нагревательный кабель, который может быть уложен на разную площадь от 1 до 2 м2.
Чтобы т.е. при подборе этот товар должен соответствовать как значению 1 м2, 1,5 м2 , 2 м2.

С другими типами Характеристик без проблем. А с числовой как быть?

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

А не проще сделать списковой? Числовой нельзя несколько.

Re: Несколько значений характеристик - Тип число

Не, значений очень много. И либо портянка в фильтре будет на два экрана, либо очень много результатов, в которых не разберешься. В идеале даже не несколько значений, а интервал (диапазон) нужен.

Ну да ладно. По другому параметру поиск построю.

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

Рабочий кейс на несколько значений типа число.

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

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

То что сделано именно так в этой системе - нормально, т.к. если "в лоб" сделать числовой список и вывести его в фильтр списка то получится как в ShopScript7, когда при изменении значения ползунка для одного товара меняется цена.

Логика свойств комплектаций: все свойства товара есть объединение свойств его комплектаций.
Варианты формирования комплектаций:
1. Сверху вниз, указали свойства в товаре, сгенерировали комплектации со свойствами, но не всегда есть полные "линейки" товаров
2. Снизу вверх, занесли комплектации и свойства по ним, после собрали их в карточке товара.

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

Этот вопрос частично решен в HostCMS, у них все "комплектации" по сути тоже товар со скрытым родителем и они могут позволить вывести все дочерние элементы списком.

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

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

Варианты в карточке товара выводить не радиобаттонами а кнопками, чуть удобнее в использовании.
функциональный пример есть в ShopScript 7 (но проблема с цветом кнопок и "скачущей версткой")

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

В форме товара, при выборе комплектации по свойствам желательно
* выводить информацию о том что такого варианта нет,

Это всё есть. Если включить контроль остатков (Веб-сайт->Настройка модулей->Магазин->Запретить оформление заказа, если товаров недостаточно на складе).
Смотрим документацию:
https://readyscript.ru/manual/

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

Остаток будет показан в рамках склада. Но у склада должен стоять флажок, что он должен показываться в карточке товара.

Варианты в карточке товара выводить не радиобаттонами а кнопками, чуть удобнее в использовании.
функциональный пример есть в ShopScript 7 (но проблема с цветом кнопок и "скачущей версткой")

Это легко можно сделать правкой шаблона. Радиокнопки в обычных комплектациях показываются тогда когда когда их число меньше 5ти. Потом выпадающим списком.

Re: Несколько значений характеристик - Тип число

Я в качестве примера привел элемент "button", в текущем базовом шаблоне "radiobutton" то что правится шаблоном понятно.

По остаткам понятно, проверю как работает.

По основной теме с числовым списком ответа не увидел.

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

По основной теме с числовым списком ответа не увидел.

Можно ли вводить несколько значений характеристик с Типом число.
Через какой-то разделитель, например ; или /

Поясню. У меня в магазине будет нагревательный кабель, который может быть уложен на разную площадь от 1 до 2 м2.
Чтобы т.е. при подборе этот товар должен соответствовать как значению 1 м2, 1,5 м2 , 2 м2.

С другими типами Характеристик без проблем. А с числовой как быть?

Числовая это только число. Поэтому делайте через списковую характеристику. Либо списком с диапазоном(в названии от 1 до 3 м.)

10

Re: Несколько значений характеристик - Тип число

вместо метров можно указывать характеристики в см, чтобы дробных частей не было,
например, 100 см, 150 см, 200 см.

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

Олег пишет:

вместо метров можно указывать характеристики в см, чтобы дробных частей не было,
например, 100 см, 150 см, 200 см.

Хм. Первый раз слышу, чтобы кто-то измерял площадь квартиры, комнаты в квадратных см.

- Сколько у тебя площадь квартиры?
- 500000 см2

бугага.

Покупатели в м2 не все площадь посчитать могут.

Есть общепринятые, устоявшиеся размерности.
Площадь помещения меряют в м2, размер экрана в дюймах, пищевую ценность в килокалориях, мощность двигателя в л.с. и т.п.
Можно, конечно, и  в аршинах площадь мерять, только процент отказов резко пойдет вверх.

Повысить оценку Понизить оценку

12 Отредактировано Олег (25.09.2016 15:33:24)

Re: Несколько значений характеристик - Тип число

Вообще-то, вы сами написали, что у вас от одного до двух метров с промежутками по 50 см,

а так, можно выводить результатах в см и специальным скриптом делить на сто в квадрате. об этом можно попросить разработчиков, либо попросить добавить характеристики с числами, типа FLOAT, с плавающей запятой в будущих версиях, тогда можно будет любые дробные значения вводить.

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

Олег пишет:

Вообще-то, вы сами написали, что у вас от одного до двух метров с промежутками по 50 см,

а так, можно выводить результатах в см и специальным скриптом делить на сто в квадрате. об этом можно попросить разработчиков, либо попросить добавить характеристики с числами, типа FLOAT, с плавающей запятой в будущих версиях, тогда можно будет любые дробные значения вводить.

Не метров, а метров квадратных.

Но суть не в этом. В дробных числах ничего страшного не вижу.
У меня проблема в другом. Одному товару соответствует диапазон размеров площади (например от 2,5 до 4 м2).
Но если выводить их все списком, то либо будет длиннющий список значений, либо очень большое кол-во результатов подбора, причем в хаотичном порядке. Ни то, ни то меня не устраивает.

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

Уточню вопрос Владимира
"Одному товару соответствует диапазон размеров площади"
примерно похоже на
"В фильтре списка будет достаточно много ширин"

это означает что либо

"товару" соответствуют несколько "комплектаций" с разными числовыми параметрами в рамках одного свойства, и от этого числового параметра зависит цена - оптимально назначать значение свойства (число) в комплектации и в фильтр "подхватывать" его в результате работы фильтра выводить не только номенклатуру но и первую комплектацию
(пример: ширина порожков одной модели)


"товару" применим с разными числовыми параметрами в рамках одного свойства, на цену не влияет, решается списком, для фильтра "ползунок" нужна "виртуальная таблица" "число - значение", которую можно получить путем предварительного преобразования списка с типом строка
(пример: на какую площадь можно разложить гибкий обогреватель)

К разработчикам:
на сколько на ваш взгляд реализуемы эти варианты?
есть ли описания принципов работы фильтров (с точки зрения работы с данными)?
где смотреть реализацию? (можно ссылку на документацию)

Повысить оценку Понизить оценку

Re: Несколько значений характеристик - Тип число

Появилась идея, как можно реализовать, причем исключительно в шаблоне.
Делаем в админке две характеристики "Площадь от" и "Площадь до".

В шаблоне фильтра sidefilters задаем условия для характеристик "Площадь от" и "Площадь до".
Название характеристики выводим для них одно, общее "Площадь".
У "Площадь от" выводим только левую часть поля ввода, а у "Площадь до" только правую.
Т.е. визуально это один фильтр Площадь, а фактически два - "Площадь от" и "Площадь до".

Значение характеристики товара (заданное админом) "Площадь от" обозначим как А, "Площадь до" - как B.
Значения поля (которое вводит покупатель) соответственно A1 и B1.
Чтобы товар выводился в результатах подбора, должны выполняться следующие условия:
A1 < A < B1
или
A1 > A и B > A1.

В карточке товара название характеристики также выводим одно "Площадь", а значение характеристики, если A = B, то выводим "Площадь, м2 - A".
Если А не равно B, то "Площадь, м2 - от A до B".

По-моему, реально сделать. При этом структура таблиц и движок остаются нетронутыми.

Повысить оценку Понизить оценку

16

Re: Несколько значений характеристик - Тип число

Насчет фильтра по диапазону чисел:

На мой взгляд вам нужно сделать 2 характеристики числовые:
- Площадь, от (тип. число)   - визуально скрыть её
- Площадь, до. (тип. число) - визуально скрыть её

А затем просто в визуальной части отобразить общий слайдер (безусловно нужно программировать на JS),
И при установке значения на общем слайдере, на самом деле добавлять фильтр по двум  характеристикам в скрытые input'ы

----------

Выводить подходящую комплектацию в категории для установленных фильтров - возможно, нужно разрабатывать доп. модуль.
В шаблоне у вас доступны переменная $filter со всеми фильтрами и полный список найденных товаров, вы можете перед отображением товара выбирать наиболее подходящую комплектацию и отображать какие-то данные из неё.

----------

Пользовательская документация по фильтрам:
https://readyscript.ru/manual/catalog_c … cteristics
https://readyscript.ru/manual/catalog_p … _tab_chars
https://readyscript.ru/manual/catalog_property.html

Принцип работы поиска можно найти в коде, класс Catalog\Model\PropertyApi::getFilteredQuery()

Повысить оценку Понизить оценку