Плагин «Удаление тем без ответов»

  • SEO
  • Люди учатся на прошлых объявлениях, что работает, а что нет

Это ваш форум, так что вы сами решаете, как он будет работать. Если вы хотите этот плагин, мы с радостью сделаем форк, удалим единственную строку, проверяющую отсутствие ответов, и установим его для вас. Но я не уверен, что это хороший выбор — делать это именно так.

Я всё ещё запутался в проблеме с запросом…
Почему это хороший выбор удалять темы, у которых есть ответы старше N, но плохой выбор удалять их через N дней? В конце концов, оба плагина удаляют темы…?

Я думаю, мы обсуждаем одно и то же, с лишь небольшой разницей:
Ваш плагин опирается на возраст ответа. Плагин, который я предлагаю, — нет.
Поэтому SEO или «Люди учатся на предыдущих объявлениях, что работает, а что нет» не изменятся ни в одном из плагинов. В конечном итоге они делают одно и то же: удаляют темы. Единственная разница — когда.

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

Позвольте привести ещё один пример: вы хотите продать стул. Хотите ли вы, чтобы люди отвечали на вашу тему через 6 месяцев, когда, вероятно, вы продали стул через неделю после создания темы? Скорее всего, нет. Так что если правило категории гласит, что каждая тема удаляется через 2 недели после создания, и пользователь знает об этом до создания темы, происходит два вещи:
1 — Они знают, что им не нужно беспокоиться об удалении своей темы, если они продадут предмет в течение этих 2 недель и забудут о теме;
2 — Если они не продадут его в течение этих 2 недель, им просто нужно создать новую тему.

Как я уже упоминал ранее, разница между этим подходом и тем, что реализован в вашем плагине, заключается в том, что пользователь (или любой другой) может продолжать «поднимать» пост ответами вроде 🔥. Так что если предмет не продан в течение 6 месяцев, а правило гласит удалять темы без ответов через 2 недели, представьте, сколько бесполезных ответов потребуется, чтобы сохранить тему живой, не говоря уже о том, что это будет отображать ответ в разделе latest, создавая бесполезный «шум».

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

На самом деле, я тоже не считаю это хорошим решением?

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

Нет, это не так. Он удаляет темы, у которых вообще нет ответов.

Очевидное решение здесь — автоматически закрывать тему через X дней после последнего ответа или после создания, либо закрыть её вручную после продажи стула. Сохранение темы даёт людям представление о том, как: а) продавать стул, б) какова его цена, в) что стул можно продать через форум. Хороший пример — категория Marketplace прямо здесь, на meta.

Это не имеет смысла (по крайней мере, для меня), поскольку потенциальная выгода от пункта #1 меньше, чем потенциальные дополнительные усилия в пункте #2.

Это можно предотвратить с помощью настроек, таких как Макс. количество последовательных ответов, Мин. длина сообщения, а также обычной модерацией.

Короче говоря, я бы воздержался от удаления ЛЮБЫХ тем (за исключением спама), поскольку именно контент определяет ваш форум и его «культуру». Кроме того, это разрывает внутренние ссылки, что может расстраивать пользователей.

2 лайка

Это действительно имеет смысл. Закрывать тему после продажи. Возможно, использовать плагин Solved с небольшой правкой CSS в этой категории, чтобы пометить тему как «Продано» или аналогично, и закрывать тему после такой пометки.

2 лайка

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

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

Спасибо.

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

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

1 лайк
  • Зарегистрируйтесь на GitHub

  • Перейдите по адресу GitHub - communiteq/discourse-delete-unreplied-topics · GitHub

  • Нажмите кнопку Fork в правом верхнем углу

  • Перейдите в только что созданный репозиторий

  • Переименуйте его в discourse-delete-older-topics

  • Перейдите в папку jobs/scheduled

  • Откройте файл delete_unreplied_topics.rb

  • Нажмите на значок карандаша в правом верхнем углу

  • Удалите строку .where("posts_count = 1")

  • Нажмите кнопку “Commit changes” в правом верхнем углу

  • Выберите вариант “Commit directly to the master branch”

  • Добавьте ваш репозиторий в файл сборки

  • Молитесь, чтобы это работало для тем с большим количеством сообщений :slight_smile:, так как я никогда не тестировал этот сценарий

4 лайка

Большое спасибо за подробный ответ. Я протестирую это и сообщу, как всё пройдёт :slight_smile:

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

Я буду держать вас в курсе.

2 лайка