# 帖子徽章

**URL:** https://meta.discourse.org/t/post-badges/114722
**Category:** Theme component
**Tags:** post-badges, experimental
**Created:** [2019年四月11日 03:52 UTC](https://meta.discourse.org/t/post-badges/114722 "2019-04-11T03:52:50Z")
**Posts on this page:** 20
**Page:** 7

<div class="post-metadata">

### Author: ![Monikas](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/monikas/32/375316_2.png) [@Monikas](https://meta.discourse.org/u/Monikas)
#### Post date: [2024年七月20日 10:29 UTC](https://meta.discourse.org/t/post-badges/114722/149 "2024-07-20T10:29:55Z")

</div>

![image](https://global.discourse-cdn.com/meta/original/4X/b/8/7/b875ccf0b1b4e1eef9accc5cf8db18bd9743777c.png)  
我的帖子徽章数量很多且尺寸较大。用户是否可以隐藏他们不想显示的特定帖子徽章？

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [2024年十月18日 11:06 UTC](https://meta.discourse.org/t/post-badges/114722/150 "2024-10-18T11:06:30Z")

</div>

我们最近对 [core](https://github.com/discourse/discourse/commit/c08c40dc230cdd58a7d7458a4a7c45df78752f4c) 和 [this theme component](https://github.com/discourse/discourse-post-badges/commit/9835634b6f1204d8a78e91a278b79d964d4b7d3a) 进行了一些改进，应该可以完全解决性能问题。所有徽章数据现在都将作为主帖载荷的一部分加载。 🎉

---

<div class="post-metadata">

### Author: ![Monikas](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/monikas/32/375316_2.png) [@Monikas](https://meta.discourse.org/u/Monikas)
#### Post date: [2024年十月19日 07:19 UTC](https://meta.discourse.org/t/post-badges/114722/151 "2024-10-19T07:19:41Z")

</div>

![image](https://global.discourse-cdn.com/meta/original/4X/1/d/6/1d67cd2fd49b29423bbcf0e4386711ee989623d9.png)

更新后奖牌消失了

之前的效果 ↓↓↓↓↓↓

 ![image](https://global.discourse-cdn.com/meta/original/4X/f/a/4/fa4e93493d36fa12f6dfb2e941fcff6b4af1c4f8.png)

使用的主题↓↓↓↓↓↓  
[FKB Pro - Social theme - Theme - Discourse Meta](https://meta.discourse.org/t/fkb-pro-social-theme/234323/358)

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [2024年十月19日 10:26 UTC](https://meta.discourse.org/t/post-badges/114722/152 "2024-10-19T10:26:49Z")

</div>

请确保您运行的是最新版本的 Discourse core。如果更新后仍无法正常工作，建议您尝试删除并重新安装主题组件。

---

<div class="post-metadata">

### Author: ![Monikas](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/monikas/32/375316_2.png) [@Monikas](https://meta.discourse.org/u/Monikas)
#### Post date: [2024年十月20日 06:04 UTC](https://meta.discourse.org/t/post-badges/114722/153 "2024-10-20T06:04:23Z")

</div>

![一张证书或文凭的图片，顶部有标题，中间有一些文字。证书是白色的，上面有黑色的文字，右下角有一个标志或徽章。(由人工智能配图)](https://global.discourse-cdn.com/meta/original/4X/a/d/0/ad07837076f4a6cc66f98252469d83fc0fef9b35.png)

我试过所有方法了。它不起作用。  
但是插件版本可以工作，但他无法自定义显示的徽章

[paviliondev/discourse-post-badges-插件](https://github.com/paviliondev/discourse-post-badges-plugin)

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [2024年十月21日 11:11 UTC](https://meta.discourse.org/t/post-badges/114722/154 "2024-10-21T11:11:46Z")

</div>

您能分享一个显示该问题的论坛链接吗？（如果您不方便公开分享，通过私信分享也可以）

---

<div class="post-metadata">

### Author: ![CCRICE](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ccrice/32/465645_2.png) [@CCRICE](https://meta.discourse.org/u/CCRICE)
#### Post date: [2024年十一月19日 03:18 UTC](https://meta.discourse.org/t/post-badges/114722/155 "2024-11-19T03:18:46Z")

</div>

同样的问题

---

<div class="post-metadata">

### Author: ![Yt.w](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/yt.w/32/348367_2.png) [@Yt.w](https://meta.discourse.org/u/Yt.w)
#### Post date: [2025年三月2日 18:55 UTC](https://meta.discourse.org/t/post-badges/114722/156 "2025-03-02T18:55:18Z")

</div>

是否可以允许用户选择他们想要显示的徽章？

---

<div class="post-metadata">

### Author: ![Arkshine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/arkshine/32/298682_2.png) [@Arkshine](https://meta.discourse.org/u/Arkshine)
#### Post date: [2025年三月2日 22:53 UTC](https://meta.discourse.org/t/post-badges/114722/157 "2025-03-02T22:53:08Z")

</div>

目前使用此 TC、Yt.w 无法实现。但我喜欢这个想法。

您有插件替代方案，允许用户选择要显示的徽章。

> **[GitHub - paviliondev/discourse-post-badges-plugin](https://github.com/paviliondev/discourse-post-badges-plugin)**
>
> Contribute to paviliondev/discourse-post-badges-plugin development by creating an account on GitHub.

它仍然有效，但存在弃用和其他需要调整的事项。  
我稍后可以看看！

---

<div class="post-metadata">

### Author: ![Yt.w](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/yt.w/32/348367_2.png) [@Yt.w](https://meta.discourse.org/u/Yt.w)
#### Post date: [2025年三月3日 10:22 UTC](https://meta.discourse.org/t/post-badges/114722/158 "2025-03-03T10:22:58Z")

</div>

真的吗！？非常感谢 😊

---

<div class="post-metadata">

### Author: ![Arkshine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/arkshine/32/298682_2.png) [@Arkshine](https://meta.discourse.org/u/Arkshine)
#### Post date: [2025年三月17日 18:03 UTC](https://meta.discourse.org/t/post-badges/114722/159 "2025-03-17T18:03:40Z")

</div>

抱歉久等了。

我创建了一个 PR：

> <https://github.com/paviliondev/discourse-post-badges-plugin/pull/3>
>
> This PR does the following:
> 
> \* Fixes \`add\_to\_serializer\` deprecation using \`ìn…clude\_conditions\`
> \* Fixes author name not appearing by renaming \`author\` -\> \`authors\` 
> \* Moves js.es6/hbs in \_user-preferences-profil\_ connector to a glimmer component 
> \* Uses a glimmer component with \`registerWidgetShim\` to display the badges
> \* SCSS: Uses CSS variables instead
> \* Updates lint configs
> \* Pins TC to 3.5.0.beta1-dev
> 
> I wanted to add rspec tests, but I need more time to determine how that works in this context.
> I can PR later if that's okay.
> 
> Here is a demo:
> 
> https://github.com/user-attachments/assets/a3f5d850-c304-4064-a16d-907716098aa5
> 
> It does work with an image:
> !\[Arc\_Un4P0dYGgT\](https://github.com/user-attachments/assets/b91be68d-3f45-40ea-ac3d-aee3d3ca752c)

如果您想立即测试，可以使用我的 fork：  
`git clone --branch fix-deprecations https://github.com/arkshine/discourse-post-badges-plugin`

---

<div class="post-metadata">

### Author: ![Yt.w](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/yt.w/32/348367_2.png) [@Yt.w](https://meta.discourse.org/u/Yt.w)
#### Post date: [2025年四月1日 06:02 UTC](https://meta.discourse.org/t/post-badges/114722/160 "2025-04-01T06:02:32Z")

</div>

非常感谢！

---

<div class="post-metadata">

### Author: ![Roi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/roi/32/130587_2.png) [@Roi](https://meta.discourse.org/u/Roi)
#### Post date: [2025年七月24日 19:39 UTC](https://meta.discourse.org/t/post-badges/114722/161 "2025-07-24T19:39:44Z")

</div>

我在最新的 Discourse 重建中收到了一些浏览器开发控制台中的警告：

> [PLUGIN discourse-post-badges-plugin] 弃用通知：使用 `registerWidgetShim` 已弃用，并将很快停止工作。受影响的 widgetShim：featured-badges。[弃用于 Discourse v3.5.0.beta8-dev] [弃用 ID：discourse.widgets-end-of-life] [信息：[Upcoming EOL for the widget rendering system](https://meta.discourse.org/t/375332/1)]

> [PLUGIN discourse-post-badges-plugin] 弃用通知：`api.includePostAttributes` 已弃用。请改用 `api.addTrackedPostProperties`。[弃用于 Discourse v3.5.0.beta1-dev] [弃用 ID：discourse.post-stream-widget-overrides] [信息：[Upcoming post stream changes - How to prepare themes and plugins](https://meta.discourse.org/t/372063/1)]

> [PLUGIN discourse-post-badges-plugin] 弃用通知：“`poster-name`”小部件已弃用，并且 `api.decorateWidget` 不再是受支持的覆盖。 [弃用于 Discourse v3.5.0.beta1-dev] [弃用 ID：discourse.post-stream-widget-overrides] [信息：[Upcoming post stream changes - How to prepare themes and plugins](https://meta.discourse.org/t/372063/1)]

---

<div class="post-metadata">

### Author: ![md-misko](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/md-misko/32/126315_2.png) [@md-misko](https://meta.discourse.org/u/md-misko)
#### Post date: [2025年七月29日 06:14 UTC](https://meta.discourse.org/t/post-badges/114722/162 "2025-07-29T06:14:48Z")

</div>

更新 3.5.0.beta8 后组件停止工作

 ![Screenshot from 2025-07-29 08-10-18](https://global.discourse-cdn.com/meta/original/4X/5/4/5/5457b0ea0557ef8d2f845526d46a406eb9a44e53.png)

---

<div class="post-metadata">

### Author: ![NateDhaliwal](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/natedhaliwal/32/313494_2.png) [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)
#### Post date: [2025年七月29日 06:27 UTC](https://meta.discourse.org/t/post-badges/114722/163 "2025-07-29T06:27:40Z")

</div>

您可以分享一下错误信息吗？谢谢。

---

<div class="post-metadata">

### Author: ![md-misko](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/md-misko/32/126315_2.png) [@md-misko](https://meta.discourse.org/u/md-misko)
#### Post date: [2025年七月29日 07:26 UTC](https://meta.discourse.org/t/post-badges/114722/164 "2025-07-29T07:26:08Z")

</div>

```plaintext
client-error-handler.js:88 [THEME 7 'Post Badges'] TypeError: 无法读取未定义的属性（读取 'forEach'）
    at initialize-discourse-post-badges.gjs:124:35
    at y (transformer.js:222:1)
    at get additionalArticleClasses (index.js:49:1)
    at eM (reviewable-status.js:96:1)
    at snippet.js:62:1
    at snippet.js:62:1
    at X (video-placeholder.js:39:1)
    at T (snippet.js:62:1)
    at h.get (item.js:168:1)
    at Array Iterator.next (<anonymous>)
    at A.getValue (item.js:168:1)
    at item.js:168:1
    at snippet.js:62:1
    at X (video-placeholder.js:39:1)
    at T (snippet.js:62:1)
    at eL (message-bus.js:159:1)
    at eE.flush (message-bus.js:159:1)
    at Object.evaluate (message-bus.js:159:1)
    at Object.evaluate (message-bus.js:159:1)
    at tq.evaluateSyscall (message-bus.js:159:1)
    at tq.evaluateInner (message-bus.js:159:1)
    at tq.evaluateOuter (message-bus.js:159:1)
    at t1.next (message-bus.js:159:1)
    at t1._execute (message-bus.js:159:1)
    at t1.execute (message-bus.js:159:1)
    at tW.handleException (message-bus.js:159:1)
    at tJ.handleException (message-bus.js:159:1)
    at t$.throw (message-bus.js:159:1)
    at ek.evaluate (message-bus.js:159:1)
    at t$._execute (message-bus.js:159:1)
    at t$.execute (message-bus.js:159:1)
    at tQ.rerender (message-bus.js:159:1)
    at t6.render (bookmark.js:114:1)
    at bookmark.js:114:1
    at tA (message-bus.js:159:1)
    at ia._renderRoots (bookmark.js:114:1)
    at ia._renderRootsTransaction (bookmark.js:114:1)
    at ia._revalidate (bookmark.js:114:1)
    at invoke (number-field.js:11:1)
    at m.flush (number-field.js:11:1)
    at g.flush (number-field.js:11:1)
    at q._end (number-field.js:11:1)
    at number-field.js:11:1
f @ client-error-handler.js:88

```

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [2025年七月29日 08:56 UTC](https://meta.discourse.org/t/post-badges/114722/166 "2025-07-29T08:56:11Z")

</div>

感谢 @md-misko，这应该能解决问题：[FIX: Correctly handle post with no badge info by davidtaylorhq · Pull Request #42 · discourse/discourse-post-badges · GitHub](https://github.com/discourse/discourse-post-badges/pull/42)

> [@Roi](#):
>
> 最新的 Discourse 重建在浏览器开发控制台中出现警告：

这些警告现在应该已经解决了（通过 [https://github.com/discourse/discourse-post-badges/commit/010b9c49269a736b6ac5f4ce1ffbaf596de6d1cb）](https://github.com/discourse/discourse-post-badges/commit/010b9c49269a736b6ac5f4ce1ffbaf596de6d1cb%EF%BC%89)

---

<div class="post-metadata">

### Author: ![Roi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/roi/32/130587_2.png) [@Roi](https://meta.discourse.org/u/Roi)
#### Post date: [2025年七月29日 16:07 UTC](https://meta.discourse.org/t/post-badges/114722/167 "2025-07-29T16:07:12Z")

</div>

> [@david](#):
>
> > [@Roi](#):
> >
> > 浏览器开发控制台中关于最新 Discourse 重建的警告：
> 
> 这些现在应该已经解决了（通过 [DEV: Glimmer post-stream 更新 (#41) · discourse/discourse-post-badges@010b9c4 · GitHub](https://github.com/discourse/discourse-post-badges/commit/010b9c49269a736b6ac5f4ce1ffbaf596de6d1cb)）

嗯，没有。我仍然在开发控制台中看到这个：

> [PLUGIN discourse-post-badges-plugin] 弃用通知：使用 `registerWidgetShim` 已弃用，并将很快停止工作。受影响的 widgetShim：featured-badges。[自 Discourse v3.5.0.beta8-dev 起弃用] [弃用 ID：discourse.widgets-end-of-life] [信息：[Upcoming EOL for the widget rendering system](https://meta.discourse.org/t/375332/1)]

> [PLUGIN discourse-post-badges-plugin] 弃用通知：`api.includePostAttributes` 已弃用。请改用 `api.addTrackedPostProperties`。[自 Discourse v3.5.0.beta1-dev 起弃用] [弃用 ID：discourse.post-stream-widget-overrides] [信息：[Upcoming post stream changes - How to prepare themes and plugins](https://meta.discourse.org/t/372063/1)]

> [PLUGIN discourse-post-badges-plugin] 弃用通知：`poster-name` 小部件已弃用，并且 `api.decorateWidget` 不再是受支持的覆盖。 [自 Discourse v3.5.0.beta1-dev 起弃用] [弃用 ID：discourse.post-stream-widget-overrides] [信息：[Upcoming post stream changes - How to prepare themes and plugins](https://meta.discourse.org/t/372063/1)]

我刚刚升级/重建了 Discourse。

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [2025年七月29日 16:12 UTC](https://meta.discourse.org/t/post-badges/114722/168 "2025-07-29T16:12:10Z")

</div>

> [@Roi](#):
>
> [PLUGIN discourse-post-badges-plugin]

看起来您正在使用基于此主题组件的 [Pavillion 插件](https://github.com/paviliondev/discourse-post-badges-plugin)。您需要联系他们以获取更新，或者切换到此官方主题组件版本（自 Pavilion 分叉插件版本以来，该版本已变得更加高效）。

---

<div class="post-metadata">

### Author: ![Roi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/roi/32/130587_2.png) [@Roi](https://meta.discourse.org/u/Roi)
#### Post date: [2025年七月29日 16:26 UTC](https://meta.discourse.org/t/post-badges/114722/169 "2025-07-29T16:26:57Z")

</div>

是的，情况就是这样。抱歉，我没注意到。

那么，您是否建议使用主题组件版本，因为 Pavillion 插件的优势已不复存在？

这两个插件彼此兼容吗？

[上一頁](https://meta.discourse.org/t/post-badges/114722.md?page=6)

[下一頁](https://meta.discourse.org/t/post-badges/114722.md?page=8)
