Мы недавно внедрили инновационный маршрут /filter, позволяющий более гибко фильтровать список тем. Важно отметить, что это первый шаг к созданию единого языка фильтрации тем для поиска и фильтрации. Кроме того, выделенный маршрут для фильтрации списка тем повышает настраиваемость боковой панели: теперь пользователи могут добавлять ссылки как пользовательские ссылки разделов в боковую панель.
Как это работает
На странице /filter есть поле ввода, куда пользователи могут ввести строку запроса для фильтрации списка тем.
Например, category:documentation tag:how-to+email отфильтрует темы, находящиеся в категории Documentation и помеченные тегами how-to и email одновременно.
В настоящее время поддерживается следующий список фильтров:
status:open— темы, которые не закрыты и не заархивированы
status:closed— закрытые темы
status:public— темы, не имеющие ограничений на чтение (например, принадлежащие защищённой категории)
status:archived— заархивированные темы
status:unlisted— невидимые темы
status:listed— видимые темы
status:deleted— удалённые темы
in:pinned— закреплённые темы (глобальные или в рамках категории)
in:watching— темы, за которыми я слежу; поддерживает значения (muted,normal,tracking,watching_first_post): позволяет отфильтровать темы, за которыми вы следите, наблюдаете и т. д. — несколько значений можно разделять запятыми
in:bookmarked— темы, которые я добавил в закладки
category:bug— темы в категории bug и во всех её подкатегориях
=category:bug— темы в категории bug, исключая подкатегории
category:documentation:admins— темы в подкатегории admins категории documentation
category:bug,feature— темы в категориях bug или feature, включая все подкатегории
=category:bug,feature— темы в категориях bug или feature, исключая все подкатегории
-category:bug,feature— исключение тем в категориях bug или feature, включая все подкатегории
-=category:bug,feature— исключение тем в категориях bug или feature, исключая все подкатегории
categories:— синоним дляcategory
tag:bug+feature— темы с тегами bug и feature одновременно
tag:bug,feature— темы с тегами bug или feature
-tag:bug+feature— исключение тем с тегами bug и feature
-tag:bug,feature— исключение тем с тегами bug или feature
tags:— синоним дляtag
tag_group:tag_group_name— темы с любыми тегами из группыtag_group
-tag_group:tag_group_name— исключение тем с любыми тегами из группыtag_group
created-by:@USERNAME— темы, созданные конкретным пользователем
posts-min:X— темы с X или более сообщениями
posts-max:X— темы с не более чем X сообщениями
posters-min:X— темы, где опубликовали сообщения как минимум X разных пользователей
posters-max:X— темы, где опубликовали сообщения не более чем X разных пользователей
likes-min:X— темы с X или более лайками
likes-max:X— темы с не более чем X лайками
likes-op-min:X— темы, у которых первое сообщение имеет X или более лайков
likes-op-max:X— темы, у которых первое сообщение имеет не более X лайков
views-min:X— темы с X или более просмотрами
views-max:X— темы с не более чем X просмотрами
activity-before:YYYY-MM-DD— темы с последним обновлением до указанной даты
activity-after:YYYY-MM-DD— темы с последним обновлением после указанной даты
created-before:YYYY-MM-DD— созданные до указанной даты
created-after:YYYY-MM-DD— созданные после указанной даты
latest-post-before:YYYY-MM-DD— темы с последним сообщением, созданным до указанной даты
latest-post-after:YYYY-MM-DD— темы с последним сообщением, созданным после указанной даты
order:activity— сортировка по дате последнего обновления (по убыванию)
order:latest-post— сортировка по дате создания последнего сообщения (по убыванию)
order:created— сортировка по дате создания темы (по убыванию)
order:views— сортировка по количеству просмотров (по убыванию)
order:likes— сортировка по количеству лайков в теме (по убыванию)
order:likes-op— сортировка по количеству лайков в первом сообщении каждой темы (по убыванию)
order:posters— сортировка по количеству участников, публиковавших сообщения (по убыванию)
order:category— сортировка по названию категории
order:ANY-asc— изменение порядка результатов на восходящий
Обратная связь
Мы хотели бы узнать у сообщества, насколько эта функция будет полезна для ваших собственных сообществ, а также как вы её используете.
Если вы считаете, что какие-то фильтры помогут вам в решении ваших задач, пожалуйста, сообщите нам об этом, приведя примеры того, что вы пытаетесь сделать.
Наконец, хотим подчеркнуть, что это очень ранняя версия функции, и на данный момент она считается экспериментальной. Пользовательский интерфейс требует доработки, и мы сейчас работаем над добавлением автодополнения прямо в строке ввода или даже интерфейса, который позволит пользователям формировать запросы для фильтрации тем, не запоминая все фильтры наизусть.




