Подписывайтесь на мой новый канал: делюсь интересными фичами из мира e-commerce 3 раза в неделю

ФИЛЬТРАЦИЯ ЛИСТИНГА ТОВАРОВ

ЛУЧШИЕ ПРАКТИКИ UX/UI В E-COMMERCE
155
ГАЙДЛАЙНОВ
Почти всегда фильтры – неотъемлемая часть листинга товаров. Без них мы просто заблудились бы в большинстве интернет-магазинов. И от того, насколько хорошо они спроектированы, сильно зависят конверсия и customer satisfaction. Сегодня поговорим о фильтрах – как всегда, детально и со множеством примеров.

Есть идеи по дополнениям – обязательно пишите, буду рад обсудить. Подпишитесь на выход новых статей в Telegram и делитесь этим постом с друзьями и коллегами.
Партнер Experience.Partners
Автор сайта HardClient.com
СТРУКТУРА СТАТЬИ
Для удобства статью я разбил на блоки. Так будет легче для восприятия. Каждый из блоков содержит в себе детальный чек-лист.
29 детальных чек-листов по e-commerce доступны в моем Telegram.

1. ОБЩИЕ РЕКОМЕНДАЦИИ

Фильтры применяются

Фильтрация листинга товаров позволяет клиенту легче находить то, что нужно. Это самый базовый момент. Не добавил бы его, если бы не нашел анти-пример:
hardclient

Фильтры видны по умолчанию

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

Расположены слева

В большинстве случаев фильтры располагаются слева от листинга товаров – и именно там их будет искать большинство клиентов.
hardclient

Вверху страницы

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

Вверху страницы + slide bar

Из-за ограничения пространства в верхнюю часть страницы можно вынести ключевые фильтры, а весь список фильтров сделать доступным в формате slide bar'а.
hardclient

Фиксация низа при скролле

Если листинг длиннее блока фильтров, при прокрутке страницы фиксируйте фильтры в состоянии максимальной прокрутки, чтобы к ним потом было легче вернуться.

Без фиксации верха при скролле

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

Блок не занимает много места

Фильтры – важный, но не основной элемент листинга товаров. Поэтому не стоит делать его слишком большим – иначе он будет «съедать» полезное пространство у листинга.
hardclient

Важные фильтры в начале

Расположите ключевые, наиболее популярные фильтры в начале блока, чтобы клиенту не приходилось их долго искать.
hardclient

Фильтр vs. категория

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

Фильтры не дублируются

Особого смысла в дублировании фильтров нет: это лишь перегрузит интерфейс и создаст дополнительную когнитивную нагрузку на клиента.
hardclient

Группировка фильтров

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

Отступы между фильтрами

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

Свертывание фильтров

Если фильтров много, реализуйте функцию свертывания, чтобы клиент быстро мог ознакомиться с их составом и выбрать нужный.
hardclient

Частичное свертывание

Чтобы область с фильтрами не занимала много места, часть второстепенных фильтров можно свернуть по умолчанию, в то время как ключевые оставить раскрытыми.
hardclient

Кнопки свертывания привычны

Сделайте кнопки свертывания привычными, иначе клиент просто не поймет их функцию. Иконка шеврона хорошо для этого подойдет. А вот такое может вызвать вопросы:
hardclient

Анимация свертывания

Анимируйте свертывание и разворачивание списков значений по фильтрам: это более приятно глазу, чем резкая прерывистая смена интерфейса.

2. ТИПЫ ФИЛЬТРОВ

Базовые фильтры

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

Категорийные фильтры

Для каждой категории товаров в листинге предусмотрите наличие специфичных фильтров, релевантных именно для нее.
hardclient

Характеристики в карточках

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

Тематические фильтры

Не ограничивайтесь только фильтрами по характеристикам, дополните их тематическими фильтрами: поводом, сезоном, стилем, образом жизни, диетой, типом характера и т.д.
hardclient

Фильтры соответствия

В листингах аксессуаров и товаров-комплиментов не забудьте добавить фильтры, которые позволяли бы выбрать основной товар, под который они подходят.
hardclient

Наличие товара

Отсутствующие товары можно размещать в листинге, если совместить их с оповещениями о поступлении. Но у клиента должна быть возможность быстро их отфильтровать.
hardclient
Будьте в курсе выхода новых статей – подпишитесь на мой канал в Telegram

3. НАЗВАНИЯ ФИЛЬТРОВ

ОБЩИЕ МОМЕНТЫ

Выделяются

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

Понятны

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

Не обрезаются

Названия фильтров должны быть краткими и не должны обрезаться. Если заставлять клиента додумывать, что это за фильтр, есть риск, что он им вообще не воспользуется.
hardclient

Содержат единицы измерения

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

Нет функции – нет кликабельности

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

ПОЯСНЕНИЯ К ФИЛЬТРАМ

Используются

Если вы используете специфичные фильтры, которые могут вызвать вопросы, снабдите их пояснениями в формате контекстных подсказок.
hardclient

Tooltip'ы унифицированы

Если вы используете пояснения к фильтрам, располагайте и отображайте символы подсказки единообразно.
hardclient

Tooltip'ы не пикселят

Базовый момент: как и любые иконки, контекстные подсказки не должны пикселить. Загружайте их в векторной графике, чтобы свести риски к нулю.
hardclient

Открытие по клику

Исключите риск непреднамеренного отображения подсказки при наведении на нее курсора по ошибке: открывайте ее по клику.

Текст подсказок краткий

Добавляя подсказку к фильтру, не думайте, что клиент будет готов читать «Войну и мир» в рамках контекстной подсказки. Сделайте их краткими. А вот такого лучше избегать:
hardclient

Подсказки исчерпывающие

При этом не стоит ограничиваться текстом для галочки. Пояснения должны давать четкое представление о том, что это за параметр и на что он влияет.
hardclient

Подсказки без прокрутки

Если контент не помещается в небольшую подсказку, не используйте в ней прокрутку. Лучше сошлитесь на более детальный контент (ссылку открывать в новой вкладке).

Выравнивание по левому краю

Центрированный текст в подсказках – да и много где еще – читается гораздо тяжелее, чем тот, что выровнен по левому краю. Вот так лучше не делать:
hardclient

Задать вопрос

Если у клиента после прочтения описания фильтра остались вопросы, ему можно предложить задать их или дать ссылку на более детальный FAQ или гайд.
hardclient

Пропадает без проблем

Сделайте так, чтобы подсказка пропадала при клике вне ее или скролле страницы. Эти действия – явные индикаторы того, что клиент дочитал и хочет ее закрыть.
Будьте в курсе выхода новых статей – подпишитесь на мой канал в Telegram

4. БЫСТРЫЕ ФИЛЬТРЫ

Используются

Разместите популярные подборки и категории в виде быстрых фильтров, доступных в один клик. Это привлечет внимание клиента к предложениям и сократит время на поиск.
hardclient

Только ключевые фильтры

Быстрые фильтры привлекают много внимания. Поэтому воздержитесь от того, чтобы добавить в эту область что-то второстепенное.
hardclient

Визуализация

Чтобы привлечь больше внимания и облегчить восприятие, снабдите быстрые фильтры релевантными пиктограммами или картинками.
hardclient

Фиксация при скролле

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

Целевой листинг не пустой

Контролируйте наличие товаров в подборках быстрых фильтров: если клиент активирует фильтр и столкнётся с пустым листингом, позитивной реакции это точно не вызовет.

Навигация по каталогу

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

Фильтры на уровне каталога

Некоторые игроки дают клиенту возможность выбрать ингредиенты, к которым он чувствителен, и помечают товары листинга, которые их содержат. Молодцы.
hardclient

5. ФИЛЬТРЫ СПИСКА ЗНАЧЕНИЙ

ЗНАЧЕНИЯ

Понятны

Значения фильтра не должны вызывать каких-либо вопросов. Значения не понятны – ими меньше пользуются – ниже шансы на то, что клиент найдет для себя что-то подходящее.
hardclient

Соответствуют листингу

Если клиент уже перешел в листинг товаров в конкретной категории, не стоит в фильтрах предлагать ему товары из других категорий:

Соответствуют фильтру

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

Легко читаются

Базовый момент: сделайте так, чтобы значения в фильтре легко читались, и клиент не ломал глаза, пытаясь найти нужное.
hardclient

Не дублируются

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

Не обрезаются

Значения должны быть видны полностью. Если нужно, переносите на новую строку. Но как будут пользоваться, например, вот этим, не понятно:
hardclient

На одном языке

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

Единый регистр

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

Без подчеркиваний

Воздержитесь от подчеркивания каждого из значений фильтра. То, что на них можно кликнуть, и так понятно. А подчеркивания только перегрузят интерфейс.
hardclient

Без пустых значений

Следите за качеством данных в значениях фильтров. Пустая страна производства или компания-производитель может вызвать любопытство, но не желание купить.
hardclient

Одна особенность – одно значение

Если товары подходят клиентам с несколькими особенностями (например, тип кожи), не заставляйте клиента выбирать свою особенность по несколько раз:
hardclient

Упрощение выбора

Вместо конкретных значений клиенту можно позволить выбрать сразу целый диапазон в 1 клик: «рейтинг от ... звезд», «скидки от ...%» и т.д.
hardclient

Близкие по смыслу – рядом

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

Прочие значения в конце

Если вы и решили вывести в значения пункт «Прочее» (от чего лучше воздержаться), размещайте его в конце, а не в середине списка.
hardclient

Кликабельна вся область

Сделайте всю область, отведенную под значение, кликабельной (а не только чекбокс и текст). Это повысит удобство выбора значения.

Число результатов по значениям

Подсвечивайте число результатов в листинге при выборе конкретного значения. Это позволит лучше управлять ожиданиями клиента.
hardclient

Число результатов вторично

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

ЕДИНИЦЫ ИЗМЕРЕНИЯ

Подписаны

Не заставляйте клиента гадать, в чем именно измеряется та или иная характеристика, по которой производится фильтрация. Добавьте в фильтры единицы измерения.
hardclient

Единообразие отображения единиц

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

Подобраны корректно

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

Без разных единиц

Подобное к подобному. Не смешивайте значения с разными единицами в рамках одного фильтра. Это лишь вызовет недопонимание.
hardclient

ВИЗУАЛЬНАЯ СОСТАВЛЯЮЩАЯ

Привычный формат

Базовый момент: представьте фильтры списка значений в привычном формате чекбоксов или radio buttons.

Реакция на наведение

Сделайте значения интерактивными, чтобы они реагировали на наведение курсора и давали визуальную обратную связь.

Анимация при клике

Добавьте дополнительную изюминку: анимируйте реакцию чекбокса на клик, сделайте ее менее резкой и более приятной для глаза.

Картинки и текст

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

Рейтинг в виде звезд

Формат 5 звезд хорошо понятен и знаком большинству. Поэтому помимо текста в фильтре по рейтингу можно использовать и соответствующую визуализацию.
hardclient

Палитра и текст для цвета

Если это не нарушит эстетику вашего сайта, в фильтре по цвету можно использовать палитру и снабдить ее лейблом или контекстной подсказкой с его названием.
hardclient

ДЛИННЫЕ СПИСКИ ЗНАЧЕНИЙ

Видны не полностью

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

Без скролла по умолчанию

В списке, видимом по умолчанию, воздержитесь от внутренней прокрутки: клиент может не заметить ее и подумать, что список ограничен лишь видимыми значениями.
hardclient

Последнее видимое значение

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

Расширение списка

Вместо прокрутки, видимой по умолчанию, используйте кнопку расширения списка снизу от отображаемых значений.
hardclient

Скролл в расширенном списке

При этом в расширенном списке внутренний скролл допустим, т.к. фильтр к этому моменту уже в фокусе внимания клиента. Как минимум, это более удобно, чем длинный список.

Кнопка расширения vs. значения

Сделайте кнопку расширения списка визуально отличной от значений в рамках фильтра, чтобы дополнительно привлечь к ней внимание клиента.
hardclient

Кнопка расширения привычна

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

Визуал в кнопке расширения

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

Общее число значений

Также ссылка может содержать общее количество значений. Это позволит лучше управлять ожиданиями клиента.
hardclient

Раскрытие – сворачивание

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

Текст кнопки сворачивания

Проектируя кнопку сворачивания, уделите внимание ее тексту. Если она скрывает список лишь частично, не стоит писать в ней «скрыть все»:

1 столбец vs. таблица

Если список длинный, не стоит бить его на несколько столбцов и отображать в виде большой таблицы: это лишь перегрузит интерфейс.
hardclient

Текстовый поиск

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

Без поиска по числовым значениям

Однако если фильтрация у вас осуществляется по числовым значениям, текстовый поиск в таком случае будет выглядеть неуместно:
hardclient

Слайдер, если много чисел

Если в фильтре много числовых значений и специфика поиска предполагает выбор диапазона, более удачной альтернативой списку может стать слайдер.
hardclient

Вложенные фильтры

Иногда вместо длинного списка всех возможных подкатегорий лучше предложить клиенту выбрать категорию, и только потом – более короткий список подкатегорий в рамках нее.

СОРТИРОВКА ЗНАЧЕНИЙ

Бренды по популярности

Сортируйте бренды по популярности: это повысит шансы на то, что клиент столкнется с чем-то интересным в кратком списке значений фильтра.
hardclient

Бренды по количеству позиций

Альтернативная механика, также используется: чем выше представленность товара в листинге (число позиций), тем выше он в списке значений фильтра.
hardclient

Бренды не по алфавиту

С одной стороны, по алфавиту сортировать как бы хорошо. С другой – есть риск того, что клиент столкнется в начале с не известными ему брендами, по которым мало позиций.
hardclient

Прочий текст по алфавиту

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

Числа по порядку

Будь то порядок по возрастанию или по убыванию, выведите числовые значения по порядку: не заставляйте клиента тратить время, выискивая нужное значение.
hardclient
Будьте в курсе выхода новых статей – подпишитесь на мой канал в Telegram

6. ФИЛЬТРЫ СО СЛАЙДЕРОМ

СЛАЙДЕР

Реакция на наведение

Сделайте края слайдера интерактивными, чтобы при наведении курсора они изменялись и давали визуальную обратную связь.

Размер краев слайдера

Края слайдера должны быть достаточно большими, чтобы клиенту было легко их зажать и перетащить.

Нелинейная шкала

Если разброс значений сильный, сделайте шкалу слайдера нелинейной, чтобы клиенту одинаково легко было выбрать как большие, так и небольшие значения.

Шорткаты

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

Без чрезмерного дублирования

Избегайте чрезмерного дублирования числовых значений в слайдере: это лишь приведет к перегрузке интерфейса. Одной пары значений будет достаточно.
hardclient

Область слайдера

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

Без промежуточных значений

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

Реакция текстовых полей

Значения в текстовых полях должны обновляться моментально при перетаскивании краев слайдера, а не только тогда, когда перетаскивание завершилось.

Без активации на экстремумах

Если клиент потянул слайдер, но в итоге так и остановился на мин. и макс. значениях, фильтр не должен активироваться и попадать в список примененных.

ПОЛЯ ТЕКСТОВОГО ВВОДА

Значения по умолчанию

По умолчанию разместите в текстовых полях минимальное и максимальное значения товаров из листинга в виде placeholder’ов. Это улучшит восприятие фильтра.
hardclient

Placeholder'ы корректны

Убедитесь, что placeholder'ы содержат в себе именно значения по товарам из листинга. Можете представить себе смартфон с диагональю 67 дюймов? Вот и я не могу.

Минимум – не ноль

Если каких-то товаров просто нет в наличии, не отображайте ноль в виде минимального значения, чтобы не искажать информацию о разбросе цен.
hardclient

Единицы измерения

Добавьте к текстовым полям единицы измерения, чтобы облегчить понимание того, что именно требуется в них ввести.
hardclient

Подписи «от» и «до»

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

Подписи визуально вторичны

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

Размер полей

Спроектируйте текстовые поля таким образом, чтобы вводимые значения вписывались в них полностью и не обрезались.
hardclient

Реакция на наведение

Сделайте текстовые поля интерактивными, так чтобы они реагировали на наведение курсора и давали визуальную обратную связь.

Активное поле выделяется

Подсвечивайте активное поле ввода, чтобы дополнительно сфокусировать на нем внимание клиента.
hardclient

Placeholder исчезает при вводе

При воде значений placeholder должен исчезать. Не заставляйте клиента стирать его самостоятельно.

Placeholder виден при активации

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

Только числовой ввод

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

В рамках мин. и макс. значений

Если клиент вводит значения, выходящие за рамки текущего листинга, скорректируйте их на мин. или макс. значения: они будут лучше отражать итоговые результаты.

Отступы в суммах

Базовый момент: добавляя отступы между тыс. и млн., вы облегчаете восприятие текстовой информации и проверку введенных значений.
hardclient

Подтверждение клавишей return

Многие для подтверждения ввода используют клавишу Return. Не забудьте настроить активацию фильтра при нажатии на нее и в своем магазине.

Подтверждение при деактивации

Применяйте фильтр по введенному значению при клике по области вне текстового поля: это также является распространенным паттерном.

Реакция слайдера

Как при изменении позиций слайдера текстовые поля должны мгновенно изменять свои значения, так и при текстовом вводе он должен соответственно перемещаться.

Быстрая очистка

Если клиент хочет быстро скорректировать конкретное текстовое поле, в нем можно предусмотреть специальный элемент для очистки в 1 клик.
hardclient

Повторная активация

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

7. БИНАРНЫЕ ФИЛЬТРЫ

В виде тумблера

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

И наличие, и отсутствие?

Встречаются случаи с 2 опциями: «да» и «нет». Подумайте: точно ли есть use-case, когда клиент ищет именно товар без характеристики? Если нет, лучше использовать тумблер.

Реакция на наведение

Сделайте тумблеры интерактивными, так чтобы при наведении курсора они слегка меняли свой вид, давая тем самым визуальную обратную связь.

Кликабельная область

В бинарных фильтрах сделайте кликабельным не только сам тумблер, но и заголовок фильтра, и область вокруг. Так мы сведем шансы на неудачный клик к минимуму.

Переключение анимировано

Сделайте переключение тумблера анимированным. Это будет более приятным глазу по сравнению с резким изменением его состояния.
Будьте в курсе выхода новых статей – подпишитесь на мой канал в Telegram

8. ПРИМЕНЕНИЕ ФИЛЬТРОВ

Применение в 1 клик

При выборе фильтра не заставляйте клиента отдельно искать и жать на кнопку применения фильтров: обновляйте листинг мгновенно.
hardclient

Обновление только листинга

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

Обновление моментальное

Даже если обновление листинга занимает секунду, это может вызвать раздражение, если клиенту нужно активировать несколько фильтров.

Запоминание действий клиента

Если клиент быстро выбрал несколько значений, пока страница не успела обновиться, система должна это запоминать и отрабатывать корректно. Вот так быть не должно:

Без прокрутки страницы

Страница при активации фильтра должна не «скакать», а оставаться на том же уровне скролла, что и до выбора значения.

Фильтры взаимосвязаны

Клиент не должен сталкиваться с пустыми результатами: при активации одного из фильтров остальные должны обновляться в соответствии с отфильтрованным листингом.

Значения без результатов

Значения без результатов нужно либо скрывать, либо выносить в конец списка. Иначе есть риск, что они заполнят собой весь список и введут клиента в заблуждение.
hardclient

Без перечеркивания при выборе

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

Фиксация порядка и состава

Исключите возможность изменения порядка и состава значений в фильтре, если клиент работает только с ним. Иначе это может сбить его с толку:

Количество результатов

При активации фильтра можно дополнительно подсвечивать количество товаров в листинге, отвечающих заданным условиям. Это поможет лучше управлять ожиданиями клиента.
hardclient

Выбор нескольких значений

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

Без выбора всех значений

Зачем предлагать клиенту выбрать все значения, если они и так видны по умолчанию, не понятно. Тем не менее, у некоторых игроков такой функционал встречается.
hardclient

Отдельные события в истории

Делайте каждое применение фильтра отдельным событием в истории браузера, чтобы клиент кнопкой «Назад» мог отменить фильтр, а не уйти со страницы полностью.

9. АКТИВНЫЕ ФИЛЬТРЫ

Видны в основной области

Базовый момент: если мы выбираем значения фильтров, они должны быть визуально заметны. Активные значения должно быть легко отличить от неактивных.
hardclient

Маркировка активных фильтров

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

Доступны вверху страницы

Хорошей практикой также будет выводить активные фильтры в виде бабблов в верхнюю часть страницы, чтобы повысить их доступность и облегчить их редактирование.
hardclient

Значения видны

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

Группировка по фильтру

Чтобы клиенту легче было сориентироваться в том, какие фильтры применены, можно разбить значения по названиям фильтров.
hardclient

Пояснение по типу фильтра

Если в бабблах видны только выбранные значения, есть риск, что они станут непонятными без контекста. Поэтому, как минимум, показывайте тип фильтра при наведении на них.
hardclient

Реакция на наведение

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

Не кликабельны, если нет функции

Если область баббла, содержащая значение, не кликабельна, не стоит курсор при наведении на нее изменять на кликабальный – введете клиента в заблуждение.
Будьте в курсе выхода новых статей – подпишитесь на мой канал в Telegram

10. СБРОС ФИЛЬТРОВ

Быстрый сброс баббла

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

Без сброса при клике по значению

Под сброс фильтра лучше выделить только область с крестиком, но не всю область баббла. Иначе реакция интерфейса может стать неожиданностью для клиента.

Быстрый сброс фильтра

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

Сброс всех бабблов

Рядом с бабблами активных фильтров предусмотрите кнопку их быстрого сброса, чтобы клиенту не приходилось прокликивать их один за одним.
hardclient

Кнопка сброса бабблов выделяется

Сделайте кнопку сброса бабблов отличной от всех остальных бабблов, чтобы клиент не спутал ее с активными фильтрами (при этом кнопка может быть визуально вторичной).
hardclient

Сброс всех фильтров

Продублируйте кнопку сброса всех активных фильтров и в основной области с фильтрами: если клиент взаимодействует с ней в моменте, ему будет удобнее сбросить их оттуда.
hardclient

Кнопка сброса фиксирована

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

Кнопка не видна, если фильтров нет

Если ни один из фильтров еще не активирован, смысла показывать кнопку очистки всех фильтров нет – на этом этапе она будет нефункциональной.
TO BE CONTINUED...
Итак, в этой статье мы разобрали функционал фильтров в листинге товаров. Как видим, не все так просто, как кажется на первый взгляд, а причины успехов и фэйлов, как всегда, кроются в деталях.
Следующие статьи будут с таким же уровнем детализации. Продолжаем создавать крупнейшую открытую русскоязычную базу лучших практик UX/UI в eCommerce.
Не забудьте подписаться на канал в Telegram и поделиться постом с друзьями и коллегами. Будем на связи.
Все статьи по e-commerce