Discourse Yearly Review

:discourse2: Summary Discourse Yearly Review creates a topic on January 1st that summarizes the previous year’s forum activity. (See our examples here on Meta - year-in-review)
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-yearly-review
:open_book: Install Guide How to install plugins in Discourse

Initial Setup

Head to your /admin/plugins page to click the discourse-yearly-review :gear: Settings button:

Yearly Review settings

  1. Enter categories to pull data from into the yearly review categories setting. If left blank, it will default to the top 5 public categories.

  2. Using the yearly review publish category setting, choose a destination category for the review to be posted.

    :bulb: It is highly recommended to set the yearly review publish category to the staff or other private category so that you can view the topic before making it public. You might also like to edit it first.

  3. Then, enable the plugin using the yearly review enabled setting.

Features

As you can see at 2022: The Year in Review, data is displayed in two sections - users and topics.

The users section includes:

  • Most Time Reading
  • Most Topics Created
  • Most Replies Created
  • Most Replied to
  • Most Likes Given
  • Most Likes Received
  • Most Visits
  • Users who have been granted a featured badge (the badge is set by the yearly review featured badge Site Setting

The topics section includes:

  • Most Read
  • Most Liked
  • Most Replied to
  • Most Popular
  • Most Bookmarked

Generating the Yearly Review

The plugin sets thresholds for deciding which topics to display. There need to be a minimum of 10 likes or replies, 5 bookmarks, a score of 10, or one hour’s read time before a topic will be displayed. The topic is published automatically through a background job. The job checks that the plugin is enabled and that it is within the first 31 days of the first month of the year. It then checks to see if a topic with the title yearly_review.topic_title has already been published by the system user. If all checks pass, the topic is published to the category set in the yearly review publish category setting. If this is not configured, the topic will be published to the Uncategorized category.

Extra Options

Yearly review categories

Categories used in this section are those set in the yearly review categories Site Setting. If this setting is not configured, the 5 best public categories from the forum will be chosen. “Best” is determined by the category topics_year count.

Sub-categories of any categories specified in the yearly review categories Site Setting will not be included in the yearly review report. If you want sub-categories to be included in the yearly review report, you will need to explicitly specify them in the yearly review categories Site Setting.

Yearly review exclude staff

The plugin has a yearly review exclude staff setting. It is enabled by default so that staff members are excluded from the users section and topics created by staff are excluded from the topics section.

Yearly review featured badge

A featured badge can be set via the yearly review featured badge setting. A maximum of 15 badge users are displayed. If more than 15 users have been granted this badge, a link to the badge’s page is displayed. If the yearly review featured badge is not configured, this section will not be displayed.

Running the Yearly Review manually

If you don’t want to wait for the background job, you can publish the topic from the rails console with:

Jobs::YearlyReview.new.execute(force: true)

If you want to generate a report for a specific year just add review_year: 'year', e.g.:

Jobs::YearlyReview.new.execute(force: true, review_year: '2021')

:discourse2: Hosted by us? If you would like to run the Yearly Review manually you can contact us at team@discourse.org and we’ll be happy to arrange that for you.

Settings

Name Description
yearly review enabled Enable the yearly review.
yearly review categories Public categories to pull topics from. The top 5 categories from this group will be selected. If left blank will default to the top 5 public categories.
yearly review exclude staff Exclude Staff from user stats.
yearly review include user stats Add user-identifying stats to the first post of the review topic.
yearly review include private categories Include user activity from private or read-restricted categories in the review.
yearly review publish category The category the review will be published in.
yearly review featured badge Enter the full badge name. Can be left blank.

:discourse2: Hosted by us? This plugin is available on all of our hosting tiers Yearly Review | Discourse - Civilized Discussion


Known Issues

  • The data is displayed in HTML tables. Tables are wrapped in div tags that have data-review-topic-users="true' and data-review-featured-topics="true" attributes. This allows the tables to be styled when they are displayed on Discourse. The styles are not copied when emails for the topics are created. Emails sent out for the topic don’t look great.

  • The first post in the generated topic is ≈ 40,000 characters due to using HTML. As a result, it cannot be edited unless you first increase the body character limit above this (see Body is limited to 32000 characters; you entered 43659)

  • emojis in titles are not rendered in the featured topic links

Last edited by @nathank 2025-01-06T21:23:15Z

Check documentPerform check on document:
「いいね!」 88

このプラグインにいくつか良い機能追加ができそうですが、ここで共有して正しい場所でしょうか?もし違っていたら教えてください。

  • スタッフをユーザーリストから除外する機能。ただし、彼らが作成したトピックは含める
  • TL4をユーザーリストから除外する機能(上記と同様に、彼らが作成したトピックは含める)
  • 複数のレビュー投稿を作成する機能。これにより、TL4(従業員に使用)とスタッフメンバー用の投稿、およびコミュニティメンバーのみの投稿を作成できます。
「いいね!」 5

こんにちは!
今年プラグインをインストールしましたが、有効になっているにもかかわらず、レビューがいつ投稿されるのか、または公開するために他に何かする必要があるのかわかりません。

どなたか教えていただけますか?
よろしくお願いします!!

「いいね!」 2

Ayelen_Rives様、こんにちは。

管理コンソールを確認すると、以下の図が表示されます。

さらに、「plugin:discourse-yearly-review」というタイトルのプラグインを詳しく調べると、別の例が示されています。

設定を構成する際には、年次レビューの公開カテゴリをスタッフまたはその他の制限付きカテゴリに指定することが不可欠です。これにより、より広範な公開を許可する前に予備的なレビューが行われます。

「いいね!」 6

アーロン、本当にありがとう!

予期せず、管理コンソールにも設定にもこれらのメッセージが表示されません。

公開カテゴリは「Staff」なので、作成されるかどうかは1月1日に判明します。

改めて感謝し、楽しいホリデーシーズンをお過ごしください!

「いいね!」 2

新年おめでとうございます!:partying_face:

このプラグインは、2つのフォーラムで実行されませんでした。そして今、2025年1月1日のメッセージが表示されます。奇妙です。

一方のフォーラムでレールコンソールで手動で実行したところ、フォーラムの言語であるドイツ語ではなく、英語で返ってきました。

何かが間違っていた/間違っています。

「いいね!」 2

まだメタにも届いていません。アドバイスに従って、まず「#staff」に公開するように設定しましたが、昨年との違いはそれだけだと思いますか

少し待てば魔法のように現れることを期待していましたが、楽観的すぎたのかもしれません。

「いいね!」 2

設定は何も変更していません。スタッフとして確認してから移動するために、フォーラムさえも変更していません。

2番目のフォーラムにも、まだ何もありません。こちらは午前11時24分です。

何かが壊れているようです。

手動で実行する場合、言語フラグは必要ですか?2番目のフォーラムもすべて翻訳したくありません。:wink:

「いいね!」 1

バックグラウンドジョブに遅延がないかもう少し様子を見たい気もしますが、手動でトリガーした場合とバックグラウンドジョブが自動的に実行された場合で、なぜ結果が異なるのかもよくわかりません。

より詳しい人の意見を聞く必要があるかもしれません。

「いいね!」 3

自動では実行されませんでしたが、手動で実行したところ問題なく動作したようです。ただし、別の言語で実行したかったわけではありません。

「いいね!」 1

今朝、サイドキックから年次レビューが50分後にスケジュールされると通知があり、それは私の現地時間で午前11時頃でした。しかし、待てなかったので手動で実行しました。問題はなく、言語も正しかったです。

その後、モデレーターをダウングレードし、再度サイドキックを実行しなければなりませんでした。なぜなら、彼らは本当に不満で、私がスタッフを除外したからです。スタッフを含めると、私のような非常にアクティブな管理者がリストを完全に支配してしまうため、最も早い方法を取りました。

まあ、それは別の話ですが、グループを含めたり除外したりする自由度をもう少し高めることはできませんか?

「いいね!」 2

なんてこった…他のフォーラムでは2023年のスレッドがある…現地時間午後2時31分。ドイツ語で。謎は深まるばかり…

「いいね!」 1

最終的にSidekiqからトリガーしました。:rocket:

「いいね!」 2

私のサイトでは、手動でsidekiqを実行しなくてもトピックが生成されました。

これらは素晴らしい提案です。ありがとうございます!このプラグインのユースケースについてさらに聞くことができて興味深いです。今年の経験に基づいて、来年までに改善できる点がないか、近日中に詳しく検討する予定です!

それまでの間、今回は投稿後に必要に応じて編集できます。

私が気づいた興味深い動作の1つは、生成されたトピックを削除すると、プラグインが有効になっている限り、翌日に新しいトピックが作成されることです。したがって、設定を試して年次レビューのトピックの複数のバージョンを生成し、それらからテキストをコピーして、必要に応じて自分で新しいトピックを公開することができます。 /sidekiqにアクセスできる場合は、そこでジョブを見つけてすぐに実行できます。

「いいね!」 2

だからこそ、レビューをまず非公開カテゴリ(つまりスタッフ)で公開してから、公開に移動するというアドバイスは、実際にはあまり良くないアドバイスです :wink: 管理者が2つのバージョンを維持したい場合を除き。

しかし、大したことではありません。

「いいね!」 1

こんにちは!幸いなことに、プラグインは1月1日に問題なくトリガーされました!:raised_hands:

現在、一部のレポート(「最も多くのトピック」や「最も多くのいいね」など)が、同じ期間の「ユーザー」ページとは異なる結果を示しているため、その仕組みについていくつか質問があります。

例えば、「最も多くのトピック」では、「ユーザー」ページに最初にユーザー「S」が表示されます。

そして、年次レビューでは最初にユーザー「C」が表示され、テーブルにはユーザー「S」がまったく表示されません。

(申し訳ありませんが、会社の機密保持のため画像をぼかす必要がありますが、追加した方が分かりやすいと思います。また、テーブルは壊れているので無視してください :upside_down_face:)

これが起こりうる理由をご存知の方はいらっしゃいますか?他のレポートはまったく同じ情報を示していますが、「最も多くのトピック」と「最も多くのいいね」は異なるユーザーを示しています。

ご協力ありがとうございます!:100:

「いいね!」 1

うわー、これが起こるなんて知らなかった。ちょうどテストしてみたら、君の言う通りだった!これはバグだ。すでに年次レビューのトピックが存在する場合、2つ目の年次レビューのトピックを作成するべきではない。

再現手順:

  1. 年次レビューのトピックが作成されたら、それを別のカテゴリに移動する
  2. /sidekiq を介して年次レビューのトピックの作成をトリガーする
  3. 2つ目の年次レビューのトピックが作成される。

この問題に遭遇した場合は、プラグインを無効にすることをお勧めします。来年までにバグを修正し、プラグインを改善するために、まもなくこのプラグインを調査する予定です。

「いいね!」 1

:thinking: どのくらい永続的なのでしょうか? もし私がそれを削除し続けた場合、6月になってもこのダンスを続けることになりますか? :joy:

そして、これは私がサポートに連絡して、私のサイトのために投稿を遡って生成してもらう必要がないことを意味しますか? 明日、それは単に現れるのでしょうか?

「いいね!」 1

毎日サイドキック経由で動作します。

「いいね!」 1

1月末で終わることを願っています。

「いいね!」 2