Фильтр без ответов

:discourse2: Краткое описание Unanswered Filter добавляет выпадающее меню в хлебные крошки, которое фильтрует список тем по темам без ответов и темам с ответами.
:eyeglasses: Предварительный просмотр Предварительный просмотр на Discourse Theme Creator
:hammer_and_wrench: Ссылка на репозиторий https://github.com/discourse/discourse-unanswered-filter
:open_book: Новичок в темах Discourse? Руководство для начинающих по использованию тем Discourse

Установить этот компонент темы

Возможности

Unanswered Filter добавляет новое выпадающее меню в хлебные крошки, которое позволяет пользователям фильтровать список тем по темам без ответов (0 ответов) и темам с ответами (более 1 ответа). Также есть возможность показать ссылку «без ответов» в навигации в качестве альтернативы выпадающему меню.

режим выпадающего меню:

режим ссылки:
Screenshot 2023-12-08 at 2.33.06 PM

Настройки

Имя Описание
exclusions
limit to groups показывать фильтр только для членов этих групп
filter mode
  • Exclusions: вы можете исключить этот фильтр со страницы вашего сайта, по умолчанию исключаются / и /top
  • Limit to groups: вы можете выбрать показ фильтра только для определенных групп (например, для сотрудников)
  • Filter mode: по умолчанию используется выпадающее меню, в качестве альтернативы доступен стиль ссылки
Перевод По умолчанию
topic_answered_filter.all любой статус
topic_answered_filter.unanswered без ответов
topic_answered_filter.answered с ответами
unanswered.title Без ответов
unanswered.help Темы, на которые не ответили

Благодарности

Адаптировано из этого сообщения от @simon


:discourse2: Хостится у нас? Компоненты тем доступны для использования на наших тарифных планах Standard, Business и Enterprise.

46 лайков

4 сообщения были перенесены в новую тему: Добавить id или класс к элементам списка

5 сообщений были перенесены в новую тему: Можем ли мы исключить вики из тем без ответов?

Привет @awesomerobot — я только что опробовал компонент «Ссылка фильтра неответов» [предыдущее поведение], и он почти идеально соответствует моим потребностям. Есть лишь пара пунктов в моём списке пожеланий:

  1. Мне бы хотелось иметь возможность исключать темы с определёнными категориями и тегами. Некоторые информационные темы не требуют ответов; они могут находиться в конкретной категории или иметь тег «документация» и т. п. Например, закреплённые посты «Добро пожаловать» можно было бы исключать по тегу.
  2. Я бы хотел, чтобы «Неответы» вели себя немного так же, как «Новые» и «Непрочитанные»: появлялись только при ненулевом значении и отображали счётчик. Это не так заманчиво для клика, когда видно, что нет соответствующих непрочитанных тем.

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

2 лайка

Просто заметка на случай, если это поможет другим:

Я решил попробовать новый компонент «Фильтр нерешённых тем». Не знаю, была ли это проблема в моём конкретном экземпляре Discourse, но у меня возникли трудности с его запуском. Я удалил, переустановил и перезагрузил, пытаясь заставить его отобразиться, и в итоге:

cd /var/discourse
./launcher destroy app
./launcher start app

… всё заработало.

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

Мне всё ещё немного хочется, чтобы можно было исключать темы по тегам, чтобы информационные темы не отображались как «нерешённые», но простое решение — добавить один ответ, например, «Эта тема закрыта», — перед её закрытием.

Работает как заявлено — отличный компонент. :star:

1 лайк

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

Если возникнут новые проблемы, обязательно сообщите нам!

5 лайков

Очень хороший плагин, спасибо!

Можно ли его немного доработать, чтобы посты от сотрудников не отображались в списке? Нас интересуют только обычные пользователи, которые не получили ответа. Думаю, сотрудники как-нибудь сами разберутся с этим. :wink:

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

1 лайк

Вы можете использовать Data Explorer, чтобы найти эти темы:

1 лайк

Я только что объединил обновление этого компонента, которое добавляет несколько настроек:

limit_to_groups заменяет предыдущую настройку show_only_for_staff (вместо неё можно использовать группу staff)

1 лайк

@awesomerobot, после последнего обновления у меня возникает следующая ошибка:

Error: Could not find module `discourse-i18n` imported from `discourse/theme-10/initializers/unanswered-filter-link

Есть какие-то идеи, как это исправить?

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

Ваша установка Discourse обновлена до актуальной версии (admin/upgrade)? Я ожидаю, что обновление исправит это.

На данный момент таких планов нет. Я не думаю, что существует простой способ сделать это… этот компонент темы полагается на встроенный параметр URL для получения сообщений с 0 ответами (?max_posts=1), но, насколько я знаю, у нас нет возможности скрывать сообщения, созданные пользователями из определённой группы.

Кажется, это не отображается на мобильных устройствах? Кто-нибудь может помочь?

1 лайк

Фильтруется ли вы по категории? На мобильных устройствах фильтры категорий (включая этот фильтр) скрыты на маршрутах обнаружения (новое/лучшее/горячее и т.д.)

Вы можете отобразить эти фильтры, добавив CSS в тему вашего сайта:

.category-breadcrumb.hidden {
  display: flex !important;
} 

1 лайк