• Sitecore系统教程之模板理解


    Sitecore中的所有内容都是一个项目。模板也是如此。Sitecore中的模板是一个项目,它定义了其他项目的结构和行为。Sitecore中的每个项目都是某个模板的实例。模板还可以定义它分解成的部分和字段并实现内容。每个部分代表模板下的子项,每个字段是相关部分项下的另一个子项。
    模板位于/ sitecore / templates中

    Ukázkašablony,sekce s poliaumístěnívetromu

     

    基本类型的模板

    可以在内容编辑器/模板编辑器中定义三种基本类型的模板。

    数据模板

    基本模板类型。它可以包含字段,可以由编辑器使用插入页面实例化。本文正好讨论了这种类型的模板。

    分支模板

    模板的分支结构。它允许您定义模板的整个分支,以便通过创建分支模板的实例来显示整个项目结构,而无需用户逐个创建它们。

    命令模板

    它基本上只处理命令,这是在创建实例模板时引发的。它用于自动创建具有业务逻辑的项目。

      
     

    标准模板

    标准模板

    继承

    模板可以从一个或多个其他模板继承。由于继承,我们可以通常为更多数据模板定义抽象模板。由于这个原因,内容项可以包含许多字段,而不必总是为每个模板单独重新定义它们。

    标准模板

    标准模板是Sitecore为其功能提供的基本模板。此模板不包含任何字段,但它继承了许多其他模板,因此我们可以在项目上定义显示名称,布局详细信息,发布限制和工作流程等。继承到标准模板的所有字段都以_开头。

    标准模板位于/ sitecore / templates / System / Templates / Standard模板中

     __Standard值

    除了字段之外,模板还可以包含定义预览的布局细节,插入选项定义用于创建初始值的分层模板,包括使用标记,例如$ name或例如图标。但是,在创建实例模板时,并非所有这些设置都会转移到项目上。为此,需要在模板下创建一种特殊类型的项目__Standard。它基本上处理实例模板,该模板定义字段的值,包括标准模板中的字段,这些字段未在实例模板上定义。它们对于从同一模板创建的所有项目都是通用的。因此,在内容项具有自己的某个字段的定义值之前,将使用__Standard值中的值。

    您可以使用“构建器选项”选项卡上“功能区”中的“标准值”按钮创建__Standard值。为了显示“构建器选项”选项卡,您必须从窗口左侧的分支中选择一个模板,然后切换到窗口内容部分的“构建器”选项卡。

    识别和导航

    您可以通过内容项轻松点击创建项目的模板。也可以使用“配置”选项卡上的“更改”键将模板更改为另一个模板。同样,使用“导航”选项卡上功能区中的“链接”键,还可以找到使用模板的所有位置。然后,内容部分中的“继承”选项卡向我们显示分支结构,向我们显示模板的所有内容,包括子继承的字段。

    无版本与共享

    模板中的字段可以定义为Unversioned或Shared。正如标题中已经清楚的那样,Unversioned字段在语言中的所有版本中具有相同的值。对于所有语言的所有版本,共享字段始终具有一个有效值。

    倒退

    模板中的字段可以具有已定义的回退。Fallback是一种机制,它确保从另一个版本或另一种语言(如果它是空的)插入字段的值。各个语言的后备层次结构在/ sitecore / system / Languages中定义。

    有必要在单个项目字段上定义字段的详细设置。模板上的“构建器”选项卡上只提供基本设置。

    创建模板时的建议

    遵循惯例。Sitecore在设计和实施名为Sitecore Helix的 Sitecore解决方案时准备了一份推荐原则的文档我建议你阅读它。它可能会帮助您设计Sitecore中遇到的所有字段。与模板相关的部分使用以下分类:

    • 接口模板 - 包含字段,约定以_开头,在C#中它等同于接口。
    • 页面类型模板 - 可以具有布局,不包含字段,从一个或多个接口模板继承,从中创建实例,在C#中它等同于实现一个或多个接口的类。
    • 数据源模板 - 即使它们也是从接口模板继承而没有布局,它们仅用于引用项作为渲染的数据源。
    • 设置模板 - 模板定义业务逻辑实现的设置,不从接口模板继承并直接实例化。
    • 文件夹模板 - 不要使用Common / Folder!为每个模块都有自己的文件夹模板。多亏了这一点,您将能够模块化解决方案并在文件上使用各种插入选项,授权等。

    除非绝对必要,否则请勿使用Shared或Unversioned字段。始终需要仔细考虑语言和文化背景。

  • 相关阅读:
    多线程系列 线程池ThreadPool
    多线程系列 使用多线程的安全问题
    C#反射Assembly 详细说明
    Assembly(c#中简单说明[转]
    反射调用性能比较
    MFC控件GDI编程
    MFC控件第一讲.DC编程
    MFC原理第六讲.消息传递
    MFC原理第五讲.消息映射.以及如何添加消息
    MFC原理第四讲.动态创建机制
  • 原文地址:https://www.cnblogs.com/BlogNetSpace/p/9844217.html
Copyright © 2020-2023  润新知