Discourse Category Experts

Overview

Discourse Category Experts is a plugin that allows users to endorse each other as experts in specific categories. Category experts’ posts are decorated to highlight their expertise. It’s a highly configurable plugin.

:link: GitHub: https://github.com/discourse/discourse-category-experts
:arrow_right: Install: Follow the plugin installation guide.

Configure

Site Settings

  • category_expert_suggestion_threshold: Suggest category experts after this many endorsements. This creates an item in the review queue for admin.

  • category_experts_posts_require_approval: Instead of auto-decorating category experts’ posts, staff need to manually give posts a thumbs up for them to be decorated. This is not recommended unless you have highly active moderators.
    Animation

  • send_category_experts_reminder_pms: Send a weekly PM to category experts with a linked to unanswered questions.

  • send_admin_category_experts_posts_reminder_pm: Send a weekly PM to staff with a linked to unapproved category expert posts. This only works when category_experts_posts_require_approval is enabled.

  • approve_past_posts_on_becoming_category_expert: When a user is placed into a category experts group, mark all their existing posts in the category(s) as expert posts. When a user is removed from a category expert group, un-mark their existing posts as expert posts.

  • max_category_expert_endorsements_per_day: Number of endorsements a user can give out in a day

  • tl2_additional_category_expert_endorsements_per_day_multiplier: Multiplier on top of max_category_expert_endorsements_per_day to give tl2 users more daily endorsements

  • tl3_additional_category_expert_endorsements_per_day_multiplier: Multiplier on top of max_category_expert_endorsements_per_day to give tl3 users more daily endorsements

  • tl4_additional_category_expert_endorsements_per_day_multiplier: Multiplier on top of max_category_expert_endorsements_per_day to give tl4 users more daily endorsements

Category Settings

  • Category experts group: Group of category experts for the category.

  • Badge: Badge given to users when they are approved as a category expert. No badge will be awarded if this is None.

  • Currently accepting user endorsements: Whether or not users can be endorsed as experts for the category. The endorse button shows on user card, and user profile page.

endorse

  • Currently accepting questions for category experts: If enabled, a checkbox will appear in the composer for users to mark a topic is a question for category experts.


Topic View

Pills appear on the topic view to indicate whether a topic has a category experts response, or if the topic is a question for category experts.

Search

There are advanced search filters for category expert fields. The appropriate search fields are shown/hidden based on who the user is. With expert response is shown to all users, Question for expert and Without category expert post are shown to category experts, and With unapproved post is only shown for staff.

image

34 Likes

This is a very useful plugin for my 2 forums! :+1:

Thanks for this!

EDIT:

I’ve installed the plugin and have 2 questions about the category settings.

Category experts group: I have to create a new group, am I right? Do I have to create a group for each category? Or can I create one group called “Expert” for example, and this is for every category I enabled the plugin?

Badge: I have disabled the badges generally, so it isn’t possible to allow it only for this? Or do you mean another badges?

Currently accepting user endorsements: Where can I find this? Or is this generally on for each user? So everybody can suggest another user, if they want it or not? :slight_smile:

3 Likes

You can configure this however you would like, either a shared expert group, or a group per category. Of course the best setup depends on your use case.

If badging is disabled, no badges can be awarded. We could hide the dropdown to select a badge, if badging is disabled on the site.

This is under category settings, and appear once an expert group is selected

image

4 Likes

Ah ok now I got it!
Thank you!

2 Likes

Is this in any way limited? (X questions for expert per user a week or something similar)

Otherwise I’d be afraid that users will continue to select it at all times, because who doesn’t want an answer from an expert :sweat_smile:

6 Likes

That’s a really good point; there is no rate limiting currently. I wonder if we should have a setting for each row in this table:

Trust Level # of endorsements per day
0 0
1 1
2 1
3 2
4 2
2 Likes

I would say it depends on many things. For example, we have a highly frenquented forum but only a few members. So with 2 endorsements per day it will be too low.

I think it would be better that every admin can set these settings on his/her own. Just a suggestion. :wink:

4 Likes

Yes, I totally agree and this would certainly be a setting.

3 Likes

After set up this plugin for about 20 categories and sub-categories, I think there should be a setting of this plugin in the plugin section where you can set up the settings for all categories you want. I know that then all these categories have the same settings but I would say it’s easier to change it in a few categories instead of set the settings in every category itself.
This of course will only work with one expert group and one/none badge for each category.

2 Likes

I agree that having a UI to adjust all the category settings at once would be helpful. Unfortunately It’s quite a lot of work and I wouldn’t expect it any time soon. If many people start using this plugin and find the same thing annoying, it’s more likely to be addressed.

4 Likes

Oh I LOVE this. We literally have a category for experts on our site, where people can offer their expertise as research subjects.

3 Likes

Forgive me if I missed this above, but is this strictly tied to category? For example, if we had a category called “Business”, could we could specify flair options for designating resident experts in, say, finance, design and manufacturing without having to also have sub-categories for each of those?

Either way, does/could flair roll up from sub-categories? Suppose we had sub-categories for each of those and someone was flaired RE for “Finance”. Would/could that flair be displayed in the parent, Business category?

Finally, let’s say I’m an expert in a secret/hidden category we don’t want to advertise. Do users without access to that category still see the flair on my profile or anywhere else tipping them off to its existence?

Thank you for building this. I’ve been doing forums since the late 90s. This is a seriously valuable plugin. It’s important to know who these people are, regardless of category.

1 Like

The only flair on the profile would be a badge. Just don’t give a badge for private categories and you’re covered.

Everything is strictly tied to a category. If you are an expert in a category, you are not automatically an expert for its subcategories and vice versa. The great news is that you can configure the groups however you would like. If you want to have a group of experts (lets call them business-experts) for your Business and Finance categories, the category settings for each category can specify business-experts as its expert group.

This is part of what the badge granting is intended to do, but here is another option:

There is a super-ninja level configuration for this plugin that I have yet to mention here. The setup requires two groups of users. One is a group for all expert’s on the site. The other group is for specific categories. For a category where business-experts is category specific and experts is for site-wide experts:

image

Below are 2 posts. The first post is by markvanlan. That user is in the experts group only, so his post has the class category-expert-experts (This is category-experts-#{group name}). The second user is a member of both groups business-experts and experts. As long as business-experts is the first value in the “Category experts group” category setting above, that group will take precedence in the post’s class. Due to this setup, when someone posted, the class on the post is category-expert-business-experts.

This is pretty freaking cool because you can add CSS in your sites theme to style the posts differently (different color… hide the check mark or border… you get it). This allows for a specific styling for general experts and a specific styling for experts within a given category.

The final quirk about this samurai level configuration is that you will see double pills on the topic list.

The pills both appear because it’s one pill per unique category expert group that posted. Check out the classes on the pills. These classes can be used to style, or hide some of the pills based on the group.

I am considering a site settings to disable the “double pill” behavior, so that you don’t have to worry about hiding one of the two if you don’t care to have two unique styles.

3 Likes

I just merged a pull request that adds rate limiting based on trust level.

7 Likes

Great plugin @markvanlan! Are tags on the roadmap by any chance (having experts for tags and not just categories)?

1 Like

I’m glad you like it! Unfortunately it’ll only ever be categories, not tags.

2 Likes
  • send_category_experts_reminder_pms : Send a weekly PM to category experts with a linked to unanswered questions.

is it possible to send daily PM to category expert with a link to unanswered questions?

Right now, that time frame is not editable. I think a setting for this time would be great though and I plan to do this at some point.

2 Likes