Sitecore:如何自定义媒体 URL

Sitecore: How to customize media urls

我将 sitecore 8.1Glassmapper 一起使用,我想自定义为我的媒体库中的图像生成的 url。

所以我的计划是利用 LinkProvider 来实现这一点,但事实证明,仅当我在代码中解析 link 时才会调用 LinkProvider,即当我执行以下操作时:

string url = Sitecore.Links.LinkManager.GetItemUrl(item); 

为了干净起见,我并没有尝试更改媒体前缀,但我需要向 url 添加一些查询字符串 params。我希望通过一些 provider/pipeline 来实现这一点,以便在生成 MVC 视图时,glassmapper 模型的 Image.Src 具有自定义的 url.

谢谢!

默认情况下 link 提供程序不处理媒体 URLs 这是由 MediaProvider 处理的。

您需要为此实现自己的 MediaProvider 并向方法添加逻辑:GetMediaUrl()。

Glass 将使用媒体提供程序获取图像的 URL。

这里有一个很好的例子,说明如何将它们放在一起:

http://getfishtank.ca/blog/sitecore-7-2-upgrade-encoding-media-library-item-names