`
jiran1221
  • 浏览: 17536 次
  • 性别: Icon_minigender_1
  • 来自: 太原
社区版块
存档分类
最新评论

dotCMS开发网站指南之一

阅读更多

 

     本篇dotCMS的开发指南应是利用dotCMS开发的开始之旅,所以请大家认真阅读该文档。 本文档的目标是教大家使用dotCMS开发你的第一个站点。(注:更好的利用dotCMS开发站点请参考开发指南之二,尽管这篇文章是开发的基础。)

     一、概念:模版(Templates)、容器(Containers)和内容(Content)

     在dotCMS中,创建新的模版和基于模版的页面是极其明确的工序。在我们开始以前,对于dotCMS来说我们需要理解两三个重要的概念。 比如:什么是模版、什么是容器和什么是内容。我们也会讨论它们如何交织起来为了创建页面和站点。

    1. 模版(Templates)

    首先,在dotCMS中的模版真的仅仅是一个布局为了发表一个HMTL页面、普通文本或者XML页面。如果你有过建站的经验,那么你会对模版比较的熟悉。它们看起来就像普通文本、像html或像xml文件,可能唯一不同就是在它们里面有一些特别的标签用于包含容器,或者所需要的内容。当在dotCMS中建立一个新的页面时,用户必须选择一个模版来装饰该页面。当建立一个新的模版,用户可以选择模版中想要包含的容器。

    2. 容器(Containers)

    在模版里面,dotCMS使用了容器。容器在模版里是为了格式化和显示页面中的内容条目的。描述“容器”最简单的方式是被看做“服务器端包含文件”的额外特性。也就是对使用“服务器端包含文件”来实现模版方式的有效补充,而且它更加的有优势。 如果你有使用“服务器端包含文件”来建立站点的经历的话,那么你将理解如何在模版中使用“容器”。在模版中使用“容器”往往比使用“服务器端包含文件”更加的强大。容器主要负责以各种不同的方式来格式化和显示站点内容。你可以创建一个容器来展现一篇文章的一段,或者你可以创建一个容器来展现一个内容列表。dotCMS的用户可以动态的排序内容列表或者也能够手动的排序页面中的内容。

   3. 内容(Content)

   最后,就是内容。在dotCMS中内容并不存在于html页面中或文件里面,也不在模版里面。dotCMS中的内容被放置在一个叫“内容仓库(content repository)”的地方。这样做的好处就是在你的站点中大量的内容能够被搜索,被添加到不同的地方并且被重复利用,甚至是不同的站点之间。使用不同的容器,相同的内容能被以不同的形式所显示。

   二、开始我们的旅程

   当你第一次建立起一个干净的dotCMS系统,系统将会自动的为我们创建两个通用的“内容类型”,其实就是dotCMS中的“结构体”。一个是“Content(Generic)”,另一个是“News Item”。另外dotCMS系统将会创建一个缺省的主机,我们可以在这个缺省的虚拟“主机”上搭建自己想要建立的站点。当第一次登陆dotCMS系统的时候,你将会看到一排的“选项卡”面板,单击叫“WebSite”的选项卡,你能够管理你的站点的整个目录结构,包括建立站点所用到的页面、文件、容器和模版。为了演示的目地,我们创建了一个简单的html页面作为我们开始用dotCMS开发站点的起点。尽管我们使用了一个非常简单的html页面作为展示,但是实际上dotCMS可以接受你所创建的任何"疯狂或复杂"的html页面或者xml页面。下面是我们演示网页的代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<style type="text/css">
body{
font-family: verdana, helvetica, tahoma;
text-align:center;
}
td{
font-size: 80%;
}
#mainCSS{
border:1px solid gray;
height:600px;
width: 800px;
}
#headerCSS{
height:70px;
background: #eee;
}
#footerCSS{height:70px;
background: #eee;
}
#navigationCSS{
width:120px;
background: #eee;
vertical-align:top;
}
#bodyCSS{
background: #fff;
vertical-align:top;
}
</style>
<title>$pageTitle</title>
</head>
<body>
<table id="mainCSS">
<tr id="headerCSS">
<td colspan="2">
HEADER CONTAINER HERE
</td>
</tr>
<tr>
<td id="navigationCSS">
NAVIGATION CONTAINER HERE
</td>
<td id="bodyCSS">
BODY CONTAINER HERE
</td>
</tr>
<tr id="footerCSS">
<td colspan="2">
FOOTER CONTAINER HERE
</td>
</tr>
</table>
</body>
</html>

 

     1. 第一步:创建"容器"

     我们要做的第一步就是创建一些简单而通用的“容器”,它们将扮演通用的头、导航和脚。(当然,其实我们在创建容器之前实际上应该先创建“结构体”,也叫内容类型这个东东,只不过我们的dotCMS帮我们自动建立了两个较为常用的“结构体”,在我们的本教程中是够用了,所以不用这个东东。但是如有需要,我们应该把建立“结构体”作为我们开发的第一步。这个在我的开发指南二中有详细的说明) 当然,这些“容器”并不负责容纳任何的内容,或者内容的格式,它们将仅仅是扮演简单的包含文件被模版所包含。所以,它们既简单又特殊。我们通过点击“website”选项卡并且单击子标签选项卡“Containers”,然后点击“add Container”选项卡来创建容器。

     a. Header Container

     第一个容器是“header container”. 为了演示的目的,这个"容器"基本上什么也不做,尽管我们可以有让用户选择一个头或者"英雄图片"的能力来作为头。这个头容器仅仅有一句代码:

    <h1>$pageTitle</h2>

     b. Left Hand Navigation Container

     第二个容器是"left-hand nav". 这个容器将会调用一个宏指令,这个宏指令将会自动的为我们建立站点的导航. 代码如下:

     #navigation(1 2)

     至于这个“宏代码” 是什么含义,其实并不重要。当然,我是说至少现在你没必要深究它什么。以后就会明白的,我不希望这个小小的东西冲淡了我们的主要任务和大局。嘿嘿,你就当它是一段“普通文本”吧,没什么的。

      c. Footer Container

      第三个容器也是基本上什么都不做,仅仅是容纳样板式的页脚信息。代码如下:

      my footer &copy2007

      d. Body Container

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics