如果我在 discourse 论坛上发布 Bandcamp URL,它会加载其嵌入式播放器。我如何才能在自己的音乐网站上实现这一点?
我尝试设置 og:video 标签但无效。
谢谢!
如果我在 discourse 论坛上发布 Bandcamp URL,它会加载其嵌入式播放器。我如何才能在自己的音乐网站上实现这一点?
我尝试设置 og:video 标签但无效。
谢谢!
你的意思是你的网站不是 Discourse?
你可以在 Discourse 源代码中搜索“onebox”或“one_box”。
或者,你可以查看 https://get.bandcamp.help/hc/en-us/articles/360013561254-How-do-I-create-a-Bandcamp-embedded-player-#:~:text=To%20create%20an%20embedded%20player,your%20merchandise%2C%20and%20so%20on. 并使用它为你的网站开发代码。
嗨 Jay,
我有一个网站,与 Bandcamp 有点类似。我创建了与您粘贴的链接类似的嵌入式播放器,这样您就可以将 iframe 添加到另一个网站,我的嵌入式播放器就会显示出来。
但您所说的是一种神奇的功能,当您简单地发布一个 Bandcamp URL 时,就会出现一个完整的 iframe 嵌入式播放器。这是 Discourse 服务器上的配置吗?
我们来看看这是否在这里有效。我将在下面粘贴一个 Bandcamp URL。
是的 ^ 如您所见,一个功能齐全的嵌入式音乐播放器出现了。我没有粘贴任何 iframe 或 js,只是上面我引用的嵌入式 URL。
这是 Discourse 知道如何为特定网站执行的特殊功能,还是您可以设置一些神奇的 header 标签来告诉它使用哪个嵌入式 URL?
正如 Jay 指出的那样,你应该查看源代码。
“Onebox”是部分将某些 URL 转换为嵌入的库。
你是否查看过?:
我认为最初的意图是让这段代码也能在非 Discourse 网站上使用。
为此,有一个(现在已无人维护的)gem,你也许可以利用它(假设你的网站是 RoR),也许你有兴趣维护它?
请注意:自那时以来,Discourse 上的代码肯定已经发展了。
您好 Robert,
感谢您为我挖出这些信息。是的,Discourse 中确实有专门的代码。我自己的网站并不需要这样做。这样就回答了那部分问题。所以,如果我想让我的网站在 Discourse(以及可能其他的论坛)上得到与 Bandcamp 相同的支持,我需要请求或贡献代码,使其也能在我的网站上运行。
我还有第二个问题。除了粘贴 URL 之外,我还尝试使用 iframe 标签添加嵌入。这在普通网站上效果很好,但在我的 discourse 论坛上却不起作用。出现了一个方框,但里面没有嵌入内容。我猜想是权限问题,所以我将我的主机添加到了允许的 iframe 中,但它仍然不起作用。
–
好的,就在我准备截图展示它不起作用的时候,它似乎开始起作用了!所以我想知道系统是否有某种延迟来应用允许的主机。
我会进一步探索。感谢您到目前为止的帮助。
好的,我刚意识到发生了什么。更改允许 iframe 设置时,它不会影响现有帖子(至少不会立即影响)。它们之后可能会生效……不确定。
但是,在创建新帖子或编辑现有帖子时,设置就会生效。
所以现在我的嵌入和 URL 都有效了——这意味着我只需要联系相关论坛,请他们将我的域名添加到允许的主机列表中,这样就可以从那时起正常工作了。
谢谢。
您好
![]()
旧帖子需要重新烘焙。您可以手动操作,方法是点击帖子下方的三个点图标,然后点击扳手图标,再点击“重新烘焙 HTML”。

如果您有很多需要重新烘焙的帖子,您可能需要使用 rake 任务 来重新烘焙所有帖子,或者使用自定义 rails 脚本来根据需要重新烘焙其中的一部分。
我想大概是这样的:
Post.where('raw LIKE ?', 'a specific URL').find_each do |p|
p.rebake!
end