您可以使用修补程序文件在Sitecore中添加或更改配置设置。Sitecore将修补程序文件与Sitecore.config 文件合并,以创建在运行时使用的配置文件。

本主题描述:

  • 补丁文件放置
  • 补丁文件语法
  • 预览修补结果

补丁文件放置

您必须/App_Config/Include直接或在子文件夹中将修补程序文件放在Sitecore安装的文件夹中。您必须提供以扩展名结尾的补丁文件名称.config

Sitecore按字母顺序合并补丁文件。文件夹中的文件在文件夹中的子文件夹中的文件之前合并。例如,文件/App_Config/Include/mywebsite9.config在文件之前合并 /App_Config/Include/Myfolder/mywebsite1.config

如果Sitecore在多个修补程序文件中找到相同的配置,则要合并的最后一个修补程序文件将覆盖以前版本的配置。

例如,如果以下列表中的所有文件都定义了相同的配置,则Sitecore仅使用列出的最后一个文件中的配置:

  • /App_Config/Include/z.config
  • /App_Config/Include/b/b.config
  • /App_Config/Include/b/c.config
  • /App_Config/Include/c/a.config [用过的]

补丁文件语法

以下XML名称空间包含与修补相关的所有属性和元素:

  • 补丁 - http://www.sitecore.net/xmlconfig/
  • 设置 - http://www.sitecore.net/xmlconfig/set/

必须先声明命名空间,然后才能在补丁文件中使用它们。通常,您在文件的开头声明它们:

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" 
xmlns:set="http://www.sitecore.net/xmlconfig/set/">
. . . . . 
. . . . .
</configuration>

当Sitecore应用补丁文件中的更改时,它会尝试将补丁文件中的每个元素与现有配置中的元素进行匹配。它使用元素名称和元素的所有属性的组合来匹配元素。如果匹配,Sitecore将更新现有元素。如果没有匹配,Sitecore会插入一个新元素。

注意

如果修补程序文件元素与现有配置中的多个元素匹配,则Sitecore会将更新应用于它找到的第一个匹配元素。因此,强烈建议您指定元素的足够属性以唯一标识它。

默认情况下,Sitecore会在元素所属的配置部分的末尾插入新元素。您可以使用patch:元素中的属性来指定相对于现有元素的放置位置,或指定它替换,更新或删除同名的现有元素。您可以使用以下属性:

  • patch:before - 在指定元素之前插入元素。
  • patch:after - 在指定元素后插入元素。
  • patch:attribute - 定义或替换元素的指定属性。您可以使用set 命名空间实现相同的效果。

例如,要在具有名称的站点之前添加站点website,请使用以下语法:

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
  <sitecore>
    <sites>
      <site patch:before=”*[@name='website']” name=”mysite” ... />
    </sites>
  </sitecore>
</configuration>

您可以使用补丁文件的示例 帮助您更改Sitecore配置。

注意

在该/App_Config/Include文件夹中,有几个文件以扩展名结尾.example。在这些文件中,您可以看到如何修补配置元素的示例。要在运行时配置中包含示例文件,必须将文件重命名为end in .config

您可以在Sitecore开发人员网站上找到有关补丁文件的更详细说明。请注意,此描述主要涉及Sitecore版本6。

预览修补结果

要查看运行时使用的配置文件,请加载URL http:// <hostName> /sitecore/admin/showconfig.aspx。

您还可以使用Sitecore实例管理器中的Config Builder来模拟合并过程。Config Builder将所有补丁文件与Sitecore.config文件合并,使您可以将生成的文件保存在任何您喜欢的位置。然后,您可以检查是否已按预期修补了配置更改。

您可以在Sitecore实例管理器的“ 主页”选项卡上的“ 捆绑工具 ” 下找到“配置生成器”。您必须先选择Sitecore站点,然后才能选择Config Builder。

注意

生成的配置文件显示修补元素的来源。例如,从Sitecore.Analytics.config 文件中获取的元素包含该patch:source="Sitecore.Analytics.config"属性。

sitecore系统教程之使用修补程序文件自定义Sitecore配置的更多相关文章

  1. sitecore系统教程之限制对客户端的访问

    如果您为不同目的配置服务器,根据角色,您可能需要禁用Sitecore客户端.例如,如果配置内容交付服务器或处理服务器,则无需访问客户端应用程序,因此在这种情况下,建议禁用客户端. 为防止未经授权访问S ...

  2. sitecore系统教程之架构概述

    Sitecore体验数据库(xDB)从实时大数据存储库中的所有通道源收集所有客户交互.它连接交互数据,为每个客户创建全面,统一的视图,并使营销人员可以使用数据来管理客户的实时体验. xDB架构非常灵活 ...

  3. sitecore系统教程之媒体库

    您可以管理媒体库中的所有媒体项目,例如要嵌入网页的图像或供访问者下载的图像.媒体库包含所有媒体项目,例如图像,文档,视频和音频文件. 在媒体库中,您可以: 将所有媒体文件保存在一个位置,并将其组织在与 ...

  4. Spring Boot2 系列教程(十八)Spring Boot 中自定义 SpringMVC 配置

    用过 Spring Boot 的小伙伴都知道,我们只需要在项目中引入 spring-boot-starter-web 依赖,SpringMVC 的一整套东西就会自动给我们配置好,但是,真实的项目环境比 ...

  5. sitecore系统教程之禁用xDB和Xdb跟踪

    Sitecore体验管理包含未启用体验数据库(xDB)且无需购买xDB许可证情况下使用Sitecore内容管理系统. 除了在未启用xDB的情况下运行Sitecore Experience Platfo ...

  6. sitecore系统教程之内容编辑器

    内容编辑器   内容编辑器是一种编辑工具,可用于管理和编辑网站上的所有内容.它专为熟悉Sitecore及其包含的功能的经验丰富的内容作者而设计. 内容编辑器的外观和功能取决于用户的角色,本地安全设置以 ...

  7. Sitecore系统教程即时查阅编辑内容

    实时模式中的Sitecore 作为开发人员,我们经常需要在本地环境中使用代码和内容.在本地,能够立即看到任何内容更改,以节省时间和提高效率是有意义的.这是在实时模式下运行Sitecore.默认情况下, ...

  8. sitecore系统教程之部署架构方式分析

    当您第一次部署Sitecore体验平台时,您可以选择三种主要体系结构选项: 内部部署服务器解决方案 混合服务器方案 云服务器解决方案 您是选择将Sitecore作为云,内部部署还是混合解决方案运行,取 ...

  9. sitecore系统教程之内容创作入门

    在Sitecore中,有两种编辑工具,您可以在其中创建和编辑网站上的内容: 内容编辑器 - 专为熟悉Sitecore及其包含的功能的经验丰富的内容作者而设计的应用程序. 体验编辑器 - 一种直观的编辑 ...

随机推荐

  1. 查找->动态查找表->二叉排序树

    文字描述 二叉排序树的定义 又称二叉查找树,英文名为Binary Sort Tree, 简称BST.它是这样一棵树:或者是一棵空树:或者是具有下列性质的二叉树:(1)若它的左子树不空,则左子树上所有结 ...

  2. LeetCode 566 Reshape the Matrix 解题报告

    题目要求 In MATLAB, there is a very useful function called 'reshape', which can reshape a matrix into a ...

  3. Flask需要登录权限的装饰器写法

    def wapper(func): def inner(*args,**kwargs): if not request.cookies.get("username"): retur ...

  4. C语音读写文件

    1.fopen() fopen的原型是:FILE *fopen(const char *filename,const char *mode),fopen实现三个功能:为使用而打开一个流,把一个文件和此 ...

  5. Maven项目Update Project后JRE System Library自动变回1.5解决办法

    最近在搭建Spring Boot项目<一步步搭建 Spring Boot maven 框架的工程>的时候,虽然设置JRE System Library为1.8,但是,当我 用 Maven ...

  6. springMVC(二): @RequestBody @ResponseBody 注解实现分析

    一.继承结构 @RequestBody.@ResponseBody的处理器:RequestResponseBodyMethodProcessor @ModelAttribute处理器: ModelAt ...

  7. LeetCode-714.Best Time to Buy and Sell Stock with Transaction Fee

    Your are given an array of integers prices, for which the i-th element is the price of a given stock ...

  8. java 并发包runnable 与 callable

    1.runnable 与 callable区别 2.避免callable执行完任务,获取返回结果时,阻塞其他子线程 下面固定线程池,设置4个,表明同时只有4个线程在执行任务,当某个线程执行完一个任务, ...

  9. linux 修改centos7的网卡ens33修改为eth0

    Linux 操作系统的网卡设备的传统命名方式是 eth0.eth1.eth2等,而 CentOS7 提供了不同的命名规则,默认是基于固件.拓扑.位置信息来分配.这样做的优点是命名全自动的.可预知的,缺 ...

  10. 数据库——MongoDB

    what's the MongoDB MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.他支持的数据结构非常松散,是类似json的bson格式 ...