在Silverstripe中嵌入YouTube视频 - Strips Fullscreen和Rel = 0

问题描述:

我试图使用页面编辑器将YouTube视频嵌入到Silverstripe网站。我们遇到了两种不同嵌入方式的问题。在Silverstripe中嵌入YouTube视频 - Strips Fullscreen和Rel = 0

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

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

所以我要么显示相关的视频,我不想这样做。或者我需要阻止用户以全屏模式观看它 - 这又是我不想做的。

我们正在Silverstripe 3.3上运行。

有什么办法可以阻止Silverstripe剥离allowfullscreen标签吗?或者如果我们将rel = 0放到最后,Silverstripe仍然会处理YouTube网址?

另外,有没有人知道这是否已经在3.4,3.5或3.6解决?

在发布之前,我已经完成了超过45分钟的全面搜索答案,包括通过Silverstripe论坛(现已停用),*和Google群组。另外,我通过3.4,3.5和3.6的一些更改日志查看与iframe和YouTube相关的任何内容,但无法找到与此问题相关的具体内容。

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

+0

由于有人认为这篇文章显示研究的努力很少,我已经更新了它清楚地说明了我所做的研究。超过45分钟的全面搜索答案,包括Silverstripe论坛(现已停用),*和Google小组。另外,我通过3.4,3.5和3.6的大部分更改日志处理任何与iframe和YouTube相关的任何内容,但无法找到与此问题相关的具体内容。我相信这是一个有效的问题,可以询问是否有任何方法阻止Silverstripe编辑器剥离allowfullscreen标记。 – jodamo5

+0

我不是下来的选民,只是说你用了45分钟并不完全表明你真的做到了。谷歌解决方案所花费的时间并不相互关联。只是指出:使用“tinymce silverstripe”给出了相当有用的链接,其中很少有我添加到我的答案中。 –

直接回答你的问题是要修改TinyMCE的配置通过设置“extended_valid_elements”

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

另一途径是引入新的短代码,以包括帧更多的属性:https://docs.silverstripe.org/en/3/developer_guides/extending/shortcodes/

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