刚刚接触TXP的人一般会对其内涵的语义模型感到困惑,包括我现在也不是很清楚,幸好 TextBook 对语义模型给了一些比较详细的说明。我看了看希望更深入的理解它的内涵。下面记录的就是我的理解。所有内容基于TXP4.0.1版本 (目前最新release版)
content vs presentation
TXP把内容content与表现presentation完全分离开来, 就是说你所写的内容的文字部分属于content,而文字如何在页面上显示由presentation来控制。
在后台管理界面可以看到四个toplevel标签,其中两个就是content和presentation。 下面分别介绍这两部分内容。
content
content包含7个标签
* organize
* write
* articles
* images
* files
* links
* comments
他们的意思都很明确除了organize需要说明一下(一会儿再说)。write用于撰写修改文章;article用于查找管理文章;images用于上传和管理图片;files用于上传和管理文件;links用于撰写和管理链接;comments用于管理评论。
ok,我们来说一下organize(组织)。organize标签提供了四个category的组织方式,分别是 article,link,image,file。以article为例,可以为article设置多个category,这样在撰写文章的时候可以指定把文章保存在哪一个category下,同时我们在撰写文章的时候也会注意到可以指定文章属于哪一个section,这样的确让人很迷惑,我们试着解释一下吧:section是网站的各个项目的分类,比如要访问music这个分类可以把地址指向www.localhost.com/music 或者www.localhost.com/?s=music;category用于文章的分类,它仅仅用于说明该文章的保存地址以便于在后台进行管理,一般来说不作为网站的分类方法使用。可能还有些模糊,不过没关系,在后面关于section还有更详细的解释。
上一次我们说到TXP的 content 标签,今天来说一说 presentation 标签。
*presentation 外观 *
网站的结构、页面的布局都要通过这个标签来控制。 它包括四个子标签
* 项目 section
* 页面 page
* 模型 form
* 风格 style
项目 section 在上一次已经有了一些初步的解释,在这里我们再深入一点。如果把网站比喻成一份报纸,那么section就相当于报纸上的某一个版面,任何一篇文章必然属于而且只能属于某一个section。可以说section就是网站结构的表现形式。
页面 page 我们打开报纸的某一个版面,可以看到上面有文章、图片、广告,或者其他什么东西,他们的排版方式在TXP里面就是用page来控制的。实际上,在page标签下看到的的确是一些html代码和TXPtags的组合。每一个section都需要一个page,当然他们可以相同也可以不同,一般来说为了让我们的网站更漂亮,更加专业化,对应于不同的section都会设计出不同的page。
模型 form 它是更小型化的html代码和TXPtags的组合,用于控制小范围的布局,比如一篇文章的布局,一个广告的布局等等。定义好的form可以在page里面使用,这样我们就有了从局部到整体的控制方法。
风格 style 这个不用多说了,就是 CSS。每一个section都需要一个style,发挥你的想象力吧,让网站更漂亮。 🙂