介绍

Sitecore的开放式架构和众多API意味着在Sitecore中实施网站可能会在很多方向上发生偏差。架构的一个特别重要的方面涉及页面构建 - 如何构建Sitecore中的网页?

Sitecore中的页面是通过内容表示的组合构建的。如何将这两者结合在一起是一个重要的架构决策,有两个选项和一个明显的答案。

由于Sitecore内容以基于树的结构组织,类似于其他CMS平台,因此新开发人员倾向于选择基于他们可能已经熟悉的架构:基于模板的页面。然而,Sitecore的优势在于其基于组件的页面架构。让我们来看看两者,看看为什么基于组件的架构几乎总是优越的选择。

基于模板的页面

使用基于模板的页面方法,网站的每个页面都基于静态模板。模板包含页面显示内容所需的所有字段,无论是标题,子标题,图像等:

  • 此模板包含页面所需的所有字段...

  • ...并且内容按预期显示在页面上。

该架构的设计和实现非常简单。每个模板都有一个相应的表示组件(Sitecore术语中的子布局或渲染),只需在页面上的适当位置呈现每个模板字段。由于这种简单的实现,可以非常快速地构建基于模板的网站。

然而,这种方法有许多缺点。内容无法跨页面重复使用或共享。因为每个页面仅包含它所需的内容,所以其他页面无法访问该内容(不是没有编写一些可能令人困惑的代码来跨页面加载数据)。也许是对这种架构的最大打击:内容无法个性化,忽略了Sitecore最大的优势之一。

基于组件的页面

使用基于组件的页面体系结构,页面上的每个内容都与单个表示组件相关联。每个表示组件通常通过数据源引用内容项。

内容与表示的分离是使Sitecore作为CMS脱颖而出的核心概念之一。通过在两者之间创建多对多关系,内容不仅仅与一个表示布局相关联。

一个内容可以多种方式显示。

在上面的例子中,“Person”是内容。该内容可以以四种不同的方式显示。这可以实现内容重用

表示组件可以通过交换数据源来显示不同的内容。

上面,单个表示组件能够交换它使用的内容项,从而实现Sitecore中的个性化A / B测试等核心概念。

基于组件的页面的最大缺点在于开发时间:与简单的基于模板的页面相比,创建数十个表示组件需要相当长的时间。

摘要

尽管这是对页面体系结构的简化概述,但显然Sitecore的优势在于其基于组件的体系结构。内容重用,演示灵活性和个性化功能可以轻松证明在Sitecore中开发组件所花费的时间。

转载于:https://www.cnblogs.com/BlogNetSpace/p/10783186.html

Sitecore 8.2 页面架构设计:模板与组件相关推荐

  1. 推荐7款超棒的单页面网站设计模板。关键是!免费!!

    之前我们推荐过Bootstrap的实用开发教程和8款HTML5实现的特效和应用,反映非常强烈,很多前端爱好者纷纷要求多分享些类似的教程和模板.今天我们推荐的这7套单页面网站设计模板不仅带有独立的在线演 ...

  2. Android 架构设计(四):组件化?

    同系列传送门 Android 架构设计(一):设计模式分析_赵星海的博客-CSDN博客 Android 架构设计(二):分包和文件结构_赵星海的博客-CSDN博客_android 分包结构 Andro ...

  3. 架构设计文档模板参考

    目录 备选方案模板 需求介绍 需求分析 5W 1H 8C 复杂度分析 高可用 高性能 可扩展 备选方案 备选方案评估 架构设计模板 总体方案 架构总览 核心流程 详细设计 高可用设计 高性能设计 可扩 ...

  4. 架构实战:架构设计文档模板

    在前面的专栏里,有同学留言说想看看具体的架构设计文档.由于信息安全的原因,再加上稍微复杂的系统,设计文档都是几十页,因此专栏无法直接给出详细的文档案例.但我认为提供一个架构设计文档模板还是很有必要的, ...

  5. 深度剖析CloudFoundry的架构设计

    VMware在今年4月份突然发布了业内第一个开源的PaaS--CloudFoundry.发布至今的这几个月里,笔者一直关注它的演进,并从它的架构设计中获益良多,觉得有必要写出来与大家分享一下. 本文会 ...

  6. 系统架构设计方法-4-数据架构设计篇

    数据架构设计工作内容 数据分布:数据实体和应用的对应关系 个人感觉:这里面写数据流转不太妥,流传应该都是应用层面来完成的.应用和数据之间的读写关系的组合. 工作内容-1-确定数据域 系统架构设计模板和 ...

  7. 一张图搞懂微服务架构设计

    前言 当前,微服务架构在很多公司都已经落地实施了,下面用一张图简要概述下微服务架构设计中常用组件.不能说已经使用微服务好几年了,结果对微服务架构没有一个整体的认知,一个只懂搬砖的程序员不是一个好码农! ...

  8. 001 电商平台核心链路_整体架构设计

    应用微服务构建电商平台,用户在业务入口提交订单请求 ,请求进入订单平台处理并落地入库,然后发送创建消息给下游服务,MQ服务将创建通知发送至物流平台处理(每层服务链路都是如此流程),物流通过MQ进入调度 ...

  9. 架构师之路二-架构设计方法论

    概念解析 在文章开始之前需要先理解几个概念: 什么是方法论? 我们拿到一个输入,然后根据这个输入预期一个输出,把中间这个过程描述出来就是方法论.所以我们本篇讲的架构师方法论就是架构师先拿到经过需求分析 ...

最新文章

  1. 重磅直播|基于格雷码结合相移技术的高鲁棒性高效率动态三维面形测量
  2. SharePoint 网站元素介绍
  3. MySQL 查询重复数据,删除重复数据保留id最小的一条作为唯一数据
  4. capsule 安装_CAPSULE SERVANT安卓版下载-CAPSULE SERVANT手游app安装-菜鸟下载
  5. xgboost原理及应用
  6. linux中死锁的概念,【Linux】死锁概念总结
  7. pptx版式验证代码
  8. P2419 [USACO08JAN]牛大赛Cow Contest
  9. 11Linux_vmtools
  10. 去重查询表mysql 中数据
  11. leecode - 入门 -- 双指针秒杀数组/链表题目
  12. centos7 docker安装_Docker安装运行并连接Centos7容器
  13. 疯狂的程序员 1-10
  14. ftp 创建工具下载,三款ftp 创建工具下载-免安装版(亲测)
  15. 集体备课模板_集体备课活动记录
  16. 桌面图标变白,任务栏图标变白
  17. redis 各种数据类型的应用场景
  18. Vscode Remote SSH 远程连接失败过程报错:试图写入的管道不存在
  19. 用tensorflow深度学习梵高的画并模仿
  20. 怎么查看war包代码

热门文章

  1. dotween unity 延时_3D俯视角射击——用Unity还原东方弹幕(上)
  2. CGAL1_1 Three Points and One Segment
  3. 3.7.6 - String Methods
  4. 猪肉新鲜度光谱特征指数构建及敏感性分析
  5. redis迁移至linux,redis几种数据导出导入方式
  6. 标准的LSTM网络以及公式
  7. idea2020新建一个jsp页面_有关idea2019版的jsp配置小教程
  8. 已设置的指纹解锁怎样解除_指纹锁哪个牌子更好用?
  9. linun开启oracle监听,Linux下配置Oracle监听器
  10. ui unity 图片高亮_Unity5 UI图片变灰处理(UGUI)(二)