【问题标题】:Embedding YouTube Videos in Silverstripe - Strips Fullscreen and Rel=0在 Silverstripe 中嵌入 YouTube 视频 - Strips Fullscreen 和 Rel=0
【发布时间】:2017-10-10 03:37:55
【问题描述】:

我正在尝试使用页面编辑器将 YouTube 视频嵌入我的 Silverstripe 网站。我们在使用两种不同的嵌入方式时遇到了问题。

  1. 编辑的插入媒体: 当我单击编辑器的“插入媒体”按钮时,我选择“来自网络”并粘贴 YouTube URL。但是我需要隐藏相关视频,因此我们需要在 URL 的末尾添加“&rel=0”。当我这样做时,“插入媒体”选项不起作用。

  2. iFrame: 因此,我尝试使用 Google 提供的嵌入代码。我去他的文本编辑器并插入它。 iframe 可以工作,但是编辑器会从 iframe 中去掉“allowfullscreen”标签——这意味着用户无法全屏观看视频。

所以我要么必须展示我不想做的相关视频。或者我需要阻止用户以全屏模式观看——这也是我不想这样做的。

我们在 Silverstripe 3.3 上运行。

有什么方法可以阻止 Silverstripe 剥离 allowfullscreen 标记?或者如果我们把 rel=0 放在最后,让 Silverstripe 仍然处理 YouTube URL?

或者,有谁知道这在 3.4、3.5 或 3.6 中是否已解决?

在发布此之前,我已经完成了超过 45 分钟的彻底搜索,包括通过 Silverstripe 论坛(现已停产)、Stackoverflow 和 Google 组。另外,我通过一些 3.4、3.5 和 3.6 的更改日志来处理与 iframe 和 YouTube 相关的任何内容,但无法找到特定于该问题的内容。

我使用的不同 CMS 中的 TinyMCE 编辑器不会从 iframe 中去除 allowfullscreen 标记。所以它似乎特定于 Silverstripe 的编辑器实现。

【问题讨论】:

  • 由于有人认为这篇文章显示出很少的研究努力,因此我对其进行了更新,以清楚地说明我所做的研究。超过 45 分钟的彻底搜索答案,包括通过 Silverstripe 论坛(现已停产)、Stackoverflow 和 Google 小组。另外,对于与 iframe 和 YouTube 相关的任何内容,我都在 3.4、3.5 和 3.6 的大部分更改日志中工作,但无法找到特定于该问题的内容。我认为询问是否有任何方法可以阻止 Silverstripe 编辑器剥离 allowfullscreen 标记是一个有效的问题。
  • 我不是反对者,但只是说您使用了 45 分钟并不能完全表明您确实做到了。谷歌搜索解决方案所需的时间并不相互关联。只是指出:使用“tinymce silverstripe”提供了相当有用的链接,其中很少有我添加到我的答案中。

标签: tinymce silverstripe


【解决方案1】:

您的问题的直接答案是通过设置“extended_valid_elements”来修改 tinymce 配置以包含更多框架属性

https://docs.silverstripe.org/en/3/developer_guides/forms/field_types/htmleditorfield/#setting-options

另一种方法是引入新的简码:https://docs.silverstripe.org/en/3/developer_guides/extending/shortcodes/

在某种程度上,后者会更安全。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-26
    • 2014-11-13
    • 2014-04-04
    • 1970-01-01
    • 2021-12-04
    • 2012-06-25
    • 1970-01-01
    相关资源
    最近更新 更多