视觉上区分Sitecore克隆

时间:2012-11-05 19:23:39

标签: c# asp.net content-management-system sitecore sitecore6

有没有办法在视觉上区分sitecore克隆?我正在寻找一种方法,以便无论何时创建克隆,克隆的项目都会有不同的颜色。

2 个答案:

答案 0 :(得分:4)

您可以启用“克隆项目”装订线图标,该图标将在内容编辑器中标记左侧带有图标的克隆。您可以通过右键单击内容树的左侧来激活此功能,如下所示。该图标是指向基本项目的可点击链接。

另请注意,克隆在内容树中以灰色文本显示。


Clone gutter icon

答案 1 :(得分:4)

通过数据提供程序的神奇功能,您可以控制克隆的外观。这是一个示例类:

using Sitecore.Data.DataProviders;
using Sitecore.Data;
using Sitecore.StringExtensions;

namespace Example
{
    public class CloneStyleDataProvider : DataProvider
    {
        public string Style { get; set; }

        public override Sitecore.Data.FieldList GetItemFields(Sitecore.Data.ItemDefinition itemDefinition, Sitecore.Data.VersionUri versionUri, CallContext context)
        {
            var fields = context.CurrentResult as FieldList;
            if (fields == null || fields[Sitecore.FieldIDs.Source].IsNullOrEmpty() || !fields[Sitecore.FieldIDs.Style].IsNullOrEmpty())
            {
                return null;
            }
            var newFields = new FieldList();
            newFields.Add(Sitecore.FieldIDs.Style, Style);
            return newFields;
        }
    }
}

然后在.config文件中添加以下补丁

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
    <sitecore> 
       <dataProviders>
            <cloneStyle type="Example.CloneStyleDataProvider,Example" patch:before="methodGroups">
                <Style>color:#333399;</Style>
            </cloneStyle>
        </dataProviders>
    </sitecore>
</configuration>

然后,您可以指定放入项目外观/样式字段的CSS样式。