How is the "top" order determined

What’s the logic used to determine the default order of top topics? Why is “Discourse’s Fourth Birthday” above “Custom Layout Plugin” when the later has had more replies, more views and more recent activity?

1 Like

You can see the explanation in the tooltip of the “top” menu. It says “the most active topics in the last year, month, week or day”.

https://github.com/discourse/discourse/blob/master/app/models/top_topic.rb#L252-L256

As you can see Discourse calculating topic score for all the periods using the counting of posts, views, topic likes and post likes. And topics will be displayed in descending order of the PERIOD_score.

@sam I just noticed quarterly_score index is missing (or no need?) here while all other periods having their own score index. Yes I already know it will not affect the result.

3 Likes

Because likes to the first post are unusually weighted… ask @sam about that. It was his choice.

Hi @codinghorror is there any way to change this by making a plugin or something ?

You can change pretty much anything you want by writing a plugin :wink:

3 Likes