Sitecore:如何自定义媒体 URL
Sitecore: How to customize media urls
我将 sitecore 8.1
与 Glassmapper
一起使用,我想自定义为我的媒体库中的图像生成的 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
我将 sitecore 8.1
与 Glassmapper
一起使用,我想自定义为我的媒体库中的图像生成的 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