Плагин Удаление тем без ответов сканирует указанные категории на наличие тем, которые существуют более x дней и не получили ни одного ответа, и удаляет их. Это помогает поддерживать ваш форум в чистоте, избавляя от тем, которые по каким-либо причинам не набрали популярности.
Настройки:
delete_unreplied_topics_categories — категории, в которых будет работать плагин
delete_unreplied_topics_days — количество дней, по истечении которых тема без ответов будет удалена
delete_unreplied_topics_dry_run — безопасный режим для тестирования, чтобы убедиться, что плагин не удалит ненужные части вашего форума
Наконец-то я установил этот плагин, пока в режиме сухой прогона. Похоже, он корректно определяет темы для удаления.
В логах каждая строка вида DeleteUnrepliedTopics would remove Topic ID *number* (*topic title*) (dry run mode) предваряется индикатором X для «Ошибка». Я ожидал, что там будет «Информация» или даже «Предупреждение».
@RGJ, это нормально? Спасибо. Я использую последнюю версию Discourse.
Да, похоже, это сделано намеренно. Я смутно помню, что были какие-то проблемы с уровнями отладки, поэтому я установил его как error. Извините за путаницу!
Спасибо за уточнение. Плагин работает как ожидалось, спасибо — хотя, интересно, что незарегистрированные темы в Discourse отображаются как имеющие хотя бы один ответ (то есть сам факт незарегистрированности), что означает, что ваш плагин их не удаляет.
Здравствуйте,
этот плагин кажется именно тем, что я ищу, но я немного волнуюсь перед установкой, так как в репозитории не было активности уже 4 года.
Как вы думаете, он всё ещё должен работать с текущей версией Discourse, или есть риск что-то сломать?
И это очень специфичный плагин. Я на 99,9% уверен, что он всё ещё работает корректно.
Вы можете сначала включить режим «сухой прогон», чтобы ничего не сломать, если это вас успокоит.
@RGJ, основываясь на множестве запросов от других пользователей:
не мог бы ваш плагин послужить основой для нового плагина, который удаляет темы в определённой категории, если они старше N дней, что настраивается пользователем?
Если ваш плагин уже сканирует темы, разве не возможно добавить правила вроде: Если категория X, сканировать темы, у которых разница между датой создания и текущей датой превышает N дней, и в таком случае удалять их.
Я не знаю всех тонкостей создания и изменения плагинов, но это было бы отличным дополнением.
Достаточно будет удалить одну строку. (Или, очевидно, создать настройку max_replies со значением по умолчанию 0, которую затем можно установить в 99999 для достижения желаемого эффекта).
Тем не менее, мне трудно придумать хороший сценарий использования для этого.
Один из возможных вариантов использования — это, возможно, зал для обсуждений «не по теме», который сбрасывается каждый месяц. Он мог бы служить местом для свободного общения, чтобы снять напряжение.
В остальном не уверен насчёт множества других сценариев использования. К тому же, на данный момент, насколько я помню, это работает только вручную, если только не создать автоматизацию. Например, просто применить таймер к теме с функцией удаления? Не помню, есть ли там опция удаления самой темы или удаляются только ответы.
Для моего конкретного случая (аналогично одному из пользователей в указанной теме выше) я хотел бы создать категорию «Объявления» для музыкантов (например, певцов, ищущих продюсеров, и наоборот), но не хочу, чтобы темы оставались доступными вечно или продлевались просто за счёт новых ответов. Я хочу установить таймер, например, чтобы все темы в этой категории, которым уже 2 недели, удалялись автоматически, независимо от количества ответов. Таким образом, пользователи будут знать, что им нужно создавать новую тему, а не добавлять бессмысленные ответы вроде эмодзи; иначе тема будет заполнена ответами с одним эмодзи, что выглядит неаккуратно. Это также заставит тех, кто действительно хочет найти партнёров для работы, приложить усилия и создать новую тему. Это своего рода фильтр для тех, кто слишком ленив, чтобы создать новую тему, сохранить текст на компьютере или телефоне и т. д.
Надеюсь, всё понятно?
Так что, если это действительно станет плагином и я использую Communiteq для хостинга, на каком плане мне нужно находиться, чтобы иметь возможность установить плагин?
Это было бы менее эффективно, чем ваш плагин, так как старые темы оставались бы видимыми, даже если они уже не актуальны. Зачем мне нужны темы людей, ищущих музыкантов три года назад? Я хочу, чтобы они удалялись.
Кроме того, закрытие темы — это то же самое, что и ваш плагин: оно зависит от количества ответов, а это не то, что я хочу. Как я уже упоминал, это может привести к тому, что пользователи будут просто добавлять комментарии с эмодзи, чтобы тема оставалась активной.
Мне нужно, чтобы темы удалялись автоматически через N дней/недель, независимо от активности. Как вы могли заметить из обсуждаемой темы, другие пользователи испытывают ту же потребность. Поскольку ваш плагин уже выполняет подобную функцию, я предполагаю, что создание версии, удаляющей темы независимо от количества ответов, не составит большого труда. Каждый администратор сможет выбрать подходящий вариант для своего форума в зависимости от своих потребностей.