gabriel
(Gabriel Grubba)
2025 年4 月 23 日 16:57
1
由 Netwrix 赞助
功能
此插件允许您覆盖 Open Graph、Twitter、标题和描述标签。
配置
此插件仅包含一个设置:Open graph overrides,它会打开此模态框:
您有一个 URL 属性,它将匹配并用于覆盖您的 meta 标签 – 这将是您的 ID。
Title - 将覆盖 title、og:title 和 twitter:title 标签。如果为空,将默认为原始值。
Description - 将覆盖 description、og:description 和 twitter:description 标签。如果为空,将默认为原始值。
设置
包含设置及其描述的表格
名称
描述
discourse_open_graph_enabled
启用 Open Graph 插件
open_graph_overrides
覆盖编辑器
8 个赞
我真的很兴奋它的存在。但我刚才的想法是:这适用于主题吗?
我猜不行,因为那样的话,人们可能不得不为每个主题手动输入开放图谱信息。
然后我想到:如果主题描述是由 Discourse AI 自动生成的,用于总结主题呢?
也许可以使用 Discourse AI Topic Summary 🤖
标题可以相同,描述为 AI 摘要。而且,如果人们想编辑,也许可以进行调整,类似于 WordPress 中的 Yoast。
对此有什么看法?
1 个赞
gabriel
(Gabriel Grubba)
2025 年4 月 28 日 14:51
3
jimkleiber:
这个对主题有效吗?
我认为它有效!但有必要为每个主题添加一个覆盖。
也许这可以成为 AI 主题摘要的一个功能——如果主题本身包含 AI 摘要,它就可以覆盖元数据内容。
一些伪代码,受 Open Graph 插件中此代码片段的启发 :
register_modifier(:meta_data_content) do |content, property, opts|
next content if property == :url # 我们不想覆盖 url
url = opts[:url]
override = Topic.find_by_url(url)[:ai_meta_data_override]
if override
content = override[property] if override[property] # 它可以是 :title 或 :description
end
content
end
2 个赞
这里不需要内置任何人工智能——动态 OG 图片所需的一切就是能够将参数从主题传递到 URL,例如 ?title=Hello+World&date=2025-04-27
这可以是一个模板系统,如 {{topic.author.username}} 或您认为在此处有意义的任何内容
这将允许用户接入任何现有的 OG 图片生成服务,或连接到他们自己的服务,或连接到 Discourse 的未来产品,如果您想要一流的支持
1 个赞
作为 Discourse 的新手,这难道不能在 Discourse 设置中完成吗?
2 个赞
好的,您介意举一个您想覆盖设置的用例吗?例如,当您从论坛分享链接时,它看起来会不同,还是主要出于 SEO 方面的考虑?
2 个赞
gabriel
(Gabriel Grubba)
2025 年5 月 3 日 19:21
8
当然!一个很好的例子是分类列表页面:
UX topics are used for when Discourse technically works as intended, but the design, interaction, or flow creates unnecessary friction, confusion, or inefficiency for users. Also for small “quality of life” improvements. completed or fixed tags are applied depending on the nature of the topic.
我们可以覆盖标题和描述,使其更具描述性。
或者,对于您希望在社交媒体上分享时具有不同文本的非常具体的主题:
我们可以将其更改为仅标题和某种简短描述。
2 个赞
这太酷了。我知道有些公司会为 Open Graph 添加一些令人印象深刻的动态图片,使其更具吸引力。我希望此功能能够添加到 Discourse 核心或作为标准插件。做得好!
2 个赞
是的,我很想将其插入我使用的 placid.app 服务中,并让它返回将要使用的图片。
也许我空闲时会尝试一下。
2 个赞