一、基础概念

在使用Umbraco这类CMS制作网站之前,先要搞清楚的是,和概念中网站制作的区别。

暂时忘掉所谓的ADO.NET存储、忘掉ASP.NET、忘掉多层架构什么的。

只需要关注:要显示什么、怎么显示、显示的内容。

举例来说,好比一篇新闻,首先要显示什么?(标题、发布时间、新闻内容、配图),其次是怎么显示?(标题在上,H1的字体,内容居中对齐,图片配在底部等),最后显示的内容(标题为Hello World、配图为世界地图等)。

首先建立起这个概念体系,才有助于对此类系统的使用。

1、显示什么

在Umbraco中叫Document Type,表示某个页面的类别,包含元素为Data Type,表示具体显示的元素类型,比如是图片,文字,视频还是富文本(在Sitecore中分别叫Template和Fields)。

2、怎么显示

在Umbraco中叫Template、Partial Views和Macros Views,这决定了某个页面的呈现方式,在Umbraco中已.cshtml文件的形式存在,包含主要的html代码(在Sitecore中分别叫Layout、Sublayout以及Render)。

3、显示内容

在Umbraco中叫Content,表示具体的信息内容,需要注意的,Conent必须依赖于Document Type而存在,却并不必须Templates的存在(在Sitecore中叫Items,其实这个表述不大准确,Sitecore中,任何一个元素都称之为Item)。

二、Document Type

1、创建基类"Document Type"

打开Setting标签,左键点击“Document Type”右侧的三个点,在弹出的联动菜单中选择"Create"。

在弹出的窗口中输入"Document Type"的名字,例如"BasePage",取消下面默认勾选的复选框"Create matching template",并点击"Create"按钮

之所以不选择"Create matching template",是因为我们第一步只是创建一个基类"Document Type",并不需要直接呈现,而是作为其他所有页面的父类,包含一些基础、通用的信息约定。

2、Info标签

在新创建的"Document Type"中,默认有4个Tab标签,默认显示的是Info标签,表示"Document Type"的基础信息。

Name:为刚创建的"Document Type"名称

Alias:别名,在查询时非常有用,也必须唯一

Allowed templates:由于没有创建Templates,因此目前为空,表示的是该"Document Type"可以被哪些模板引用

Default template:指定当创建当前"Document Type"对应的"Content"默认选择的模板

3、Structure标签

Structure标签主要定义"Document Type"的结构关系

Allow at root:指定当前"Document Type"对应的Content是否会显示在根节点

Enable list view:是否显示可排序及搜索菜单

Allowed chil node types:允许哪些"Document Type"对应的"Content"可以作为当前"Document Type"对应的"Content"的子节点

4、Generic propperties标签

默认的属性标签,可以把绝大多数通用的字段类型放置在这个标签内。

点击"Create new property"可以打开如上的添加属性界面。其中:

Name:属性名称

Alias:属性别名

Type:属性类型。注意,此处对应的实际上是"Developer"标签中的"Data Type"类型。具体可参考:https://our.umbraco.org/documentation/Getting-Started/Data/Data-Types/

Tab:属性归属于哪个Tab中

Mandatory:是否必填属性

Validation:正则表达式验证

5、Tabs标签

Tabs标签的作用,是给Properties标签添加数据分类。保存后,可以在"Generic properties"中看到新添加的tab。如上图。

三、应用

1、首页"Document Type" Structure Tab

如前所述,创建的只是基础类型,并不具备展示功能,实际的展示应该是由派生而出的"Document Type"所定义。下图表示的是该类型允许在根节点呈现,接受的子级为"Generic List"

2、首页"Document Type" 的"Generic properties" Tab

内容元素,只是针对于特殊的首页,增加了KV选择,名为:Main KV

当然,一个完整的网站,不可能只有上面这么一点内容。但是依据这个基础,可以不断的扩展网站,最终形成网站的主体骨架。

下一篇,要说网站的皮,Templates,不过目前还没拿到什么稿件,估计要等一段时间了吧。

Umbraco学习2------数据类型的更多相关文章

  1. js学习之数据类型

    js学习之数据类型 基础类型:number string boolean null undefined 引用类型:object array function undefined值是派生自null值的( ...

  2. Go语言学习之数据类型

    ### Go语言学习之数据类型 数据类型的转换 1.Go语言不允许隐式类型转换(显示转换才可以) 2.别名和原有类型也不能进行隐式类型转换 例子: func TestImplicit(t *testi ...

  3. python学习6—数据类型之集合与字符串格式化

    python学习6—数据类型之集合与字符串格式化 1. 使用id()可以查看一个变量的内存地址: name = 'alex' id(name) 2. 进制转换 十进制转换为二进制等: a = 10 # ...

  4. MySQL学习笔记--数据类型

    一.数据类型(内容参考<SQL学习指南>)不完整 1.文本类型 文本类型 最大字节数 tinytext 255 text 65535 varchar 65536 mediumtext 16 ...

  5. C语言基础学习基本数据类型-变量的输出与输入

    变量的输出 变量如何输入输出呢?实际上,在这之前你已经使用过输出语句(printf语句)了,我们可以使用printf来执行输出. printf语句的使用方法如下: printf(格式控制字符串, 数据 ...

  6. C语言基础学习基本数据类型-变量和常量

    变量和常量 什么是变量和常量?有些数据在程序运行前就预先设定,并在运行过程中不发生变化,称之为常量:有些数据在程序运行中可能发生变化或被赋值,称之为变量. 使用变量前必须先声明一个变量.变量定义的语法 ...

  7. Redis 学习(二) —— 数据类型及操作

    Redis支持string.list.set.zset.hash等数据类型,这一篇学习redis的数据类型.命令及某些使用场景. 一.String,字符串 字符串是 Redis 最基本的数据类型.一个 ...

  8. MySQL学习4 - 数据类型一

    介绍 一.数值类型 二.浮点型 验证三种类型建表 验证三种类型的精度 三.日期类型 综合练习: 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选 ...

  9. python学习Day7 数据类型的转换,字符编码演变历程

    一.数据类型的转换 1.1.1.字符转列表:lst1 = str.split(默认空格,也可依据指定字符分界),若无分界字符,就没法拆分,这时可以直接放进list转成列表 ----> s1 = ...

  10. Java之基础学习(数据类型、运算符、分支语句和循环语句)

    在工作用得比较多的是shell和python编程,对于java以前也学习过,使用很少,这次借朋友推荐的java视频教程来温习下. 也是因为现在很多开源测试工具使用java编写的,学习一下更有助于测试工 ...

随机推荐

  1. static和extern关键字 对函数的作用

    本文目录 • 一.extern与函数 • 二.static与函数 • 三.static.extern与函数的总结说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能 ...

  2. [置顶] 蓝牙基础知识进阶——Physical channel

    从本篇文章开始,晓东将会和大家一起来学习一些蓝牙的比较高阶的基础知识. 二.物理通道 物理通道是piconet区分的标准,它是蓝牙系统结构层次中的最底层了.     Q1:物理通道有哪些类型 物理通道 ...

  3. Nginx与Tomcat安装、配置与优化

    Nginx与Tomcat安装.配置与优化 Nginx与Tomcat安装.配置与优化 Nginx的安装与使用 Nginx是一款优秀的反向代理服务器 安装: rpm(或者是pkg安装),是预编译好的程序包 ...

  4. 关于webapp中的文字单位的一些捣腾

    前言 文字是网页内容的一枚大将,我们无时无刻都在看着它,只要是你盯屏幕上的任何一个地方都会有文字.地铁上无时无刻都在盯着屏幕上的人对于文字更为敏感,太大不行,太小TN又看不清上面到底在说什么,有时候车 ...

  5. Flot chart学习笔记

    背景及相关简介 在最近的BS新项目中需要用到绘图数据显示的功能.在进行充足的选择之后决定才去开源的Flot.Flot是一个jQuery绘图库.主要用于简单的绘制图表功能.具有吸引人的渲染外观和互操作的 ...

  6. 最近招两个兼职的活(PHP和JSP)

    我这里的活,都是兼职写作的,是两本入门教程, 一本是PHP+Nginx 一本是JSP+Servlet. 都是入门教程,有署名有稿酬,有兴趣的可以联系 QQ:837652732  验证:PHP或Java ...

  7. Nanjing GDG Meetup 8月线下活动

    致各位亲爱的 Google 技术爱好者 很高兴的通知各位朋友,Nanjing GDG 将在本周六 (08/31) 举办线下活动,讨论 Android 开发实战技巧,热烈欢迎大家报名参加. 时间:  8 ...

  8. python 类型转换函数

    python提供了一些可将某个值从一种类型转换为另一种类型的内置函数. 1. int函数可以把任何可以转换为整型的值转换为整型.int可以将浮点数转换为整数,但不会做四舍五入操作,而是直接丢弃小数部分 ...

  9. Saiku国际化总结

    国际化步骤: 1.在mondrian.properties同路径下加上locale_zh_CN.properties资源文件,内容例如:schema.name.K12UserAnalysis=K12用 ...

  10. iOS 8.0正式公布啦

    从昨晚開始,苹果新版移动操作系统iOS 8.0開始提供免费下载服务.新版操作系统提供有数百个新功能,当中包含相机功能中添加了延时摄影模式,能够使用其它厂商开发的输入法.购买的App应用程序能够与最多6 ...