<sc:Image>
并且<sc:FieldRenderer>
,在渲染 MediaItem 时,生成如下所示的 html 代码:
<img src="~/media/twitter.gif" alt="Twitter" width="100" height="22" />
注意属性中使用的相对路径src
:这意味着当这样的图像在多个页面上重复使用时,浏览器必须多次获取它(例如在页面http://example.com/和http://example.com/关于我们/)。当我img
在代码中生成标签时,我可以使用以下代码段来强制使用绝对 URL:
string url = Sitecore.StringUtil.EnsurePrefix('/',
Sitecore.Resources.Media.MediaManager.GetMediaUrl(media));
如何配置 Sitecore 以强制媒体网址中的前导斜杠?
使用 Reflector 我可以看到它MediaOptions.AbsolutePath
控制了我想要实现的行为,但我不知道如何为 Sitecore 内置控件设置它。设置Media.MediaLinkPrefix
或mediaPrefixes
输入web.config
似乎并没有改变任何东西。