0

下面的 sitecore 配置代码在正常模式下运行良好。

    <encodeNameReplacements>
      <replace mode="on" find=" " replaceWith="-" />
    </encodeNameReplacements>

在页面编辑器模式中(空格)“”或不替换为“-”。

在页面编辑器模式下:如果我尝试删除图像并插入新图像;在我保存页面之前不会显示图像,因为(空格)“”或未替换为“-”。

在此处输入图像描述在此处输入图像描述

我错过了什么吗,任何想法都将不胜感激。

4

2 回答 2

0

如果有人遇到这个问题;查找在您的网站上编写的任何自定义媒体代码。我得到了导致问题的以下自定义代码:

 public class MediaProvider : Sitecore.Resources.Media.MediaProvider 
        {
            public override string GetMediaUrl(Sitecore.Data.Items.MediaItem item, Sitecore.Resources.Media.MediaUrlOptions options)
            {
                string url = base.GetMediaUrl(item, options);

                if (!(Sitecore.Context.PageMode.IsNormal && options.UseItemPath))
                {
                    return url;
                }
            }
        }

更改为时工作

public class MediaProvider : Sitecore.Resources.Media.MediaProvider 
    {
        public override string GetMediaUrl(Sitecore.Data.Items.MediaItem item, Sitecore.Resources.Media.MediaUrlOptions options)
        {
            string url = base.GetMediaUrl(item, options);

            if (options.UseItemPath)
            {
                return url;
            }
        }
    }
于 2014-03-25T14:44:05.630 回答
0

在我找到这篇文章之前,我遇到了encodeNameReplacements搞乱媒体路径的问题。

在我们的项目中实现此代码后,adash将替换%20并且媒体图像仍将呈现。

Sitecore 7.2 升级媒体库问题

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

在将客户端升级到 Sitecore 7.2 时,发行说明的这一部分让我们暂停:

媒体 API

在渲染媒体 URL 时,系统没有使用encodeNameReplacements部分中的配置来替换 URL 中的特殊字符。

已修复此问题,以便媒体 URL也使用encodeNameReplacements配置。(323105, 314977)

概括:

媒体库 URL 现在使用encodeNameReplacements配置。

于 2014-09-25T19:26:11.043 回答