您可以使用修补程序文件在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. LeetCode 965 Univalued Binary Tree 解题报告

    题目要求 A binary tree is univalued if every node in the tree has the same value. Return true if and onl ...

  2. 《linux 文本处理》- sed/awk

    一:sed 行文本处理 基本概念 sed 用于处理单行文本 sed 命令本身不会修改源文件,只是处理文件"流"的内容. 如果需要修改源文件,请使用 -i  或者 重定向 文件. 使 ...

  3. kubernetes的Kubelet

    1. kubelet简介 在kubernetes集群中,每个Node节点都会启动kubelet进程,用来处理Master节点下发到本节点的任务,管理Pod和其中的容器.kubelet会在API Ser ...

  4. ELKstack5.6.5

    ELKstack 安装: 一:环境准备: 1.给添加块磁盘50G,相当于模拟raid 2.分别给它们做本机的主机解析 [root@node01 ~ ]#cat  /etc/hosts 127.0.0. ...

  5. 基于external version进行乐观锁并发控制

    ?version=1?version=1&version_type=external它们的唯一区别在于,_version,只有当你提供的version与es中的_version一模一样的时候, ...

  6. 如何将wordpress所有文章批量改为已发布状态

    用wordpress建站的一个好处就是bd站长工具平台上有数据结构插件,可以认为bd默认支持wp发展,另外一种建站程序是discuz.我们在用wordpress发布文章时,特别是那种多用户投稿的文章一 ...

  7. staticmethod()静态方法和classmethod类方法都是装饰器

    1.staticmethod()静态方法 使用@staticmethod目的是为了增加可读性,不需要参数self(不强制要求传递参数) 的方法都可以加上@staticmethod增加可读性 静态方法无 ...

  8. 浅谈JS的变量提升

    JS的解析机制,是JS的又一大重点知识点,在面试题中更经常出现,今天就来唠唠他们的原理.首先呢,我们在我们伟大的浏览器中,有个叫做JS解析器的东西,它专门用来读取JS,执行JS.一般情况是存在作用域就 ...

  9. sap 下载程序

    1: 左下角,直接输入 software centre.  搜索相应程序下载.

  10. nginx命令行参数

    通过控制台进入nginx目录后 1. 启动nginx start nginx 或 nginx.exe 2. 重启nginx nginx -s reload 3. 停止nginx nginx -s st ...