【1】根据结构的功能结构的不同,drupal划分为,node,user,comment等不同的结构,他们的结构是不同的。他们可以作为四个不同的抽象类,根据这个抽象类,分别有一套hook函数去控制实现的流程。分别有一套theme函数对应一套展示界面。

【2】用户、区块和评论不是节点。在这些特定的数据结构中,为了适应它们各自的特定目的,它们每一个都拥有自己的钩子系统。

节点是一段内容,有相同的结构,也有不同的部分,相同的部分用保持一致,不同的部分用不一个字段去标识。用面向对象的方法去理解节点,节点是一个抽象类,而博客,论坛等具体的功能性站点里的东西可以视作节点的实例化。

节点是一段内容(a piece of content),它是网站内容的基本组成单元。网站上的主要内容是由一个个节点组成的。通过观察网站上发布的各种内容(如新闻、博客、论坛帖子等),可发现它们都有如下的共同特性:

需要一个唯一的ID用于标识这个节点;

都有标题和内容;

需要记录发布时间、修改时间和发布者。

用面向对象的分析问题的方法,可以将这些内容进行抽象出一个“节点类”,节点类具有最基本的属性,而其他类(如博客文章、论坛主题等)均继承自此类,增加一些专属的属性。因此,可以认为Drupal网站中的每个节点是节点类的一个实例。

如图3-1所示为一个网站中的节点类的实例。可以看到,每个节点类除了标题、内容、发布者等共同的属性外还有专属属性。使用这样的图对网站内容进行分析是一种很好的方法。

图3-1 节点类结构图

由于节点的共性,Drupal为节点的创建和编辑准备了相同的页面,这样使管理员可以在一个页面中完成全部节点的创建。

content type

内容类型(Content type)就是在抽象层次上对节点的一个归类,如上面提到的新闻和博客文章,是两种不同的内容类型。不同内容类型的文章用于不同的使用场景。每一个节点都必须属于某个内容类型,一个内容类型下可以有多个节点。

Drupal默认提供两种内容类型:页面(Page)和故事(Story)。这两者没有实质的区别,只是在显示时,故事节点会显示节点的发布信息, 如时间和发布者等;但页面不会显示。页面经常用于存储如“公司介绍”等介绍性文字信息;而故事通常用于存储如“站点新闻”、“公告”等内容,且在浏览时可 显示发布者和发布时间等信息。

Drupal的后台管理有“内容类型”管理功能,管理员可以创建新的内容类型并设置每个内容类型具有哪些属性。除标题、内容属性外,还提供了诸如是 否支持评论、是否开启版本控制等功能选项。同时,在内容类型的设置中可以对节点的三个基本属性——是否发布在首页、是否置顶和是否发布——有选择地开启。

但是,像3.1节如图3-1所示描述的“新闻节点类”,除了基本属性外,还需要“文中插图”这个额外的属性。这时需要使用第三方模块Content Construction Kit(简称为CCK)提供的为节点增加字段的功能。

最新文章

  1. tomcat 504 gateway time-out
  2. Android drawableleft drawableTop 设置图片的大小
  3. 杭电oj 1069 Monkey and Banana 最长递增子序列
  4. Hive权限控制和超级管理员的实现
  5. 编辑WCF配置不出现
  6. 如何用十条命令在一分钟内检查Linux服务器性能
  7. 我想要个pc和手机共有的客户端,就像百度云(iBarn网盘好用)
  8. Creating Contextual Menus创建上下文菜单
  9. JS正则表达式的test()方法检查汉字
  10. windows共享文件夹
  11. yum与rpm的区别以及详细介绍
  12. js生成1-100不重复的随机数及生成10个1-100不重复的随机数
  13. SSL连接并非完全问题解决
  14. 使用natapp将本地服务映射到外网
  15. Orchard之在前台显式一个属于自己的列表
  16. 自然语言交流系统 phxnet团队 创新实训 个人博客 (三)
  17. RestTemplate异常no suitable HttpMessageConverter found for request type [java.lang.Integer]
  18. C# 编写最小化时隐藏为任务栏图标的Window appllication
  19. android缓存具体解释
  20. 主题 Theme 小结

热门文章

  1. 三种timer控件的简单实例
  2. Wormholes 虫洞 BZOJ 1715 spfa判断负环
  3. JS 函数的基本练习
  4. VS2013过期激活
  5. Qt 学习之路 2(54):剪贴板
  6. 单选框radio总结(获取值、设置默认选中值、样式)
  7. 查找表,Two Sum,15. 3Sum,18. 4Sum,16 3Sum Closest,149 Max points on line
  8. 115th LeetCode Weekly Contest Prison Cells After N Days
  9. List<Type> 随机排序
  10. pandas 多列排序