0

我们正在使用 ext:news 在我们的 Intranet 上显示 youtube 视频。 在此处输入图像描述

问题是默认的 ext:news 播放器在最后显示相关视频。 在此处输入图像描述

有没有办法rel=0在没有大量修改的情况下添加参数?

谢谢你的帮助

4

1 回答 1

1

一种方法(我认为 EXT:news 希望你这样做)是提供自定义媒体渲染器。但是,您应该首先了解 EXT:news 中的媒体渲染是如何发生的。以下文本假定扩展的版本为 3.0.1。

EXT:news 如何呈现媒体

EXT:news 通过将media-object (的实例Tx_News_Domain_Model_Media)传递给媒体渲染器列表来渲染媒体。每个渲染器都会在被询问时告诉它是否能够渲染媒体元素。渲染器按给定顺序被询问,第一个回答“是”的渲染器将渲染媒体元素。

渲染器是必须实现接口Tx_News_MediaRenderer_MediaInterfaceTx_News_MediaRenderer_FalMediaInterface(如果您使用 FAL)的简单类。

所描述的媒体渲染过程是通过使用 ViewHelper 触发的<n:mediaFactory>。这个 ViewHelper 有 4 个参数:

  • 要渲染的媒体元素
  • 要询问的媒体渲染器类(作为类名字符串,逗号分隔)
  • 媒体元素的宽度和高度

有趣的部分是 ViewHelper 的“类”参数。在默认模板中,它设置为 TypoScript 设置的值plugin.tx_news.interfaces.media.video,因此如果您愿意,您也可以在纯 TypoScript 中定义列表。

你需要做什么

您需要注册自己的媒体渲染器对象,这会将“rel=0”参数添加到使用的视频 URL。为此,您需要一个扩展,可以是您可以控制的现有扩展,也可以是简单的新扩展。此扩展应提供一个实现Tx_News_MediaRenderer_MediaInterface接口并根据需要呈现视频的类。您可能几乎可以复制课堂上的所有内容Tx_News_MediaRenderer_Video_Youtube

然后您需要将该类的名称添加到<n:mediaFactory>-ViewHelper 的调用中,例如通过将其添加到提到的TypoScript 设置中。确保它替换了默认的 Youtube MediaRenderer,或者在列表中位于它之前。

于 2015-01-09T16:30:04.487 回答