Drupal

Paging - 内容分页模块

  Paging 为 Drupal 内容提供了分页功能。通过使用自定义的分页符,或者设置通过字数自动分类的功能,可以实现将较长内容分隔成多个页面的功能。

  使用:启用 paging 模块的后,为指定的"输入格式(Input Formats)"启用 paging 过滤器。然后只需要在编辑内容时,插入分页符,即可实现内容分页功能。

Paging 模块配置管理界面截图

Paging 模块

内容分类: 
Drupal 模块分类: 

IMCE - 支持多用户分目录及磁盘配额的文件/图片上传管理工具

  WYSIWYG 模块为 Drupal 提供了所见即所得编辑器,然而大部分编辑器此时还不能上传图片。

  IMCE 模块与 WYSIWYG 模块相集成,为各大主要的所见即所得编辑器提供一个 IMCE 按钮,用户可根据其提供的功能,从本地上传图片。

  说明:IMCE 与 WYSIWYG 是两个相互独立的模块,要让两者集成,需要安装并启用 IMCE Wysiwyg API bridge 模块才行。

IMCE 模块

内容分类: 

WYSIWYG - 所见即所得编辑器接口

  WYSIWYG 是 “What You See Is What You Get” 的首字母缩写,即有“所见即所得”的意思。

  Drupal 默认只提供简单的文本框,并未加载任何编辑器。这对于大多数干接触 Drupal 的国内用户来讲,真是十分的不方便 :D

  WYSIWYG 是用于集成“所见即所得”编辑器的接口,通过使用 WYSIWYG 模块,能够为 Drupal 集成数十种国内外流行的所见即所得编辑器,管理员可根据自己的喜好来选择不同的编辑器。

  目前用得比较多的编辑器有:CKEditor, TinyMCE, FCKEditor 等等

wysiwyg 模块

 

内容分类: 

Views - 强大灵活的内容列表生成工具

  Views 也叫“视图”,是 Drupal 最常用的模块之一,通过使用 views,管理员可以方便地通过图形界面来生成各种列表,包括但不限于文章列表、图片列表、用户列表等等。使用 Views 构造出来的区块或者页面,管理员可能生成内容列表、相册缩略图、幻灯片等等。

Views 配置

  Views 的配置非常精细,因此也为我们提供了强大而灵活的功能,总体来讲,Views 包含以下几大基本配置项:“基本配置”、“关联”、“参数”、“字段”、“排序标准”  和 “过滤器” 等基本设置

  在基本设置中,可以为 views 配置以下内容:

  • 名称:Views 的名称,便于管理员区分不同的 Views,会显示在左侧的 Views 面板中;
  • 标题:Views 的标题。根据 Views 类型的不同,此标题会应用于区块标题、页面标题等等
  • 输出样式:选择 Views 的输出样式,默认有列表、网格、表格等几种样式,通过安装其它 Views 扩展模块,还可以使用 Views 来构造幻灯片等内容;
  • 使用分页器:是否显示分页页码
  • 要显示的条目:指定 Views 中显示的内容的数量
  • ……

  这些配置都是较简单的东西,大家多点击配置一下便可了解,本文就不一一说明了。

  除了基本配置外,Views 还有“关联”、“参数”、“字段”、“排序标准”  和 “过滤器” 等几大配置项,

  其中,“字段”用于定义显示在 Views 中的项目,管理员可以根据需要进行选择,例如下面便是一个很简单的 Views,应用了“标题”字段

  Views 示例

  另外也常用 Views 来生成列表,以下便是一个使用“节点标题”和“创建日期”构成的 Views 列表

views 列表示例

除了标题列表,Views 还可以生成图片列表,这对制作图片新闻、产品展示以及相册都是非常实用的

views 图片列表

  通过使用不同的字段,可以灵活地构造不同的 views 布局,再看看下面这个图文混排的内容列表,也是 Views 哦,呵呵

Views 图文混排示例

  Views 配置中的“排序标准”用于管理 Views 中内容的排序方式,管理员可以选择按Nid进行排序、按节点日期进行排序、按浏览量进行排序等等。Views 的排序方式也是基于许多不同的值,管理员可以根据需要灵活的进行配置。

  Views 过滤器为 Views 中的内容提供了筛选过滤的功能,比如指定只显示指定的“节点:类型”、指定的“分类:词汇”、状态为“已发布”的内容。

  Views 的配置精度十分精细,但总的来讲就是前面提到的几大类配置,本文就不一一细说了。

  不论使用什么建站程序,调用各种数据生成列表都是常见操作,国内的CMS大多使用数据标签来实现数据的调用,然而与 Drupal 相比,国内程序实现数据调用和展示的方式,远没有 views 强大和灵活。Views 可以说是 Drupal 建站时不可不用的模块之一。

内容分类: 
Drupal 模块分类: 

CCK - Content Construction Kit - 内容类型属性字段构建工具

  CCK 是 Content Construction Kit 的简称,即“内容构建工具箱”的意思。

  在 Drupal 6 中,管理员虽然可以使用Drupal核心的内容模块来新增内容类型,然而因为核心内容模块功能有限,管理员只能对内容类型进行一些基本的配置。如修改标题、正文的命名,更改评论功能启用状态、内容的默认发布状态等等。虽然用户也可以自行编码创建新的内容结构,但对于普通Drupal用户来讲,实在是不容易实现。

  CCK 则为 Drupal 核心的内容模块扩展功能,通过使用 CCK,管理员可以为内容自行添加各种字段,而不再只能使用标题和正文两大字段了。

内容分类: 
Drupal 模块分类: 

Administration menu - 方便灵活的 Drupal 管理菜单

  Administration Menu 是一个十分好用的 Drupal 管理模块,它提供一个灵活的管理菜单。此管理菜单将 Drupal 管理页面间的导航都汇集在一起,并可以在鼠标悬停时展开子菜单,大大减少了管理员在不同管理页面之间切换的点击次数,提高了网站管理的效率。

admin menu 模块

内容分类: 
Drupal 模块分类: 

Drupal 主题模板方案(Template Suggestions)与覆写机制的实现和原理简述

  Drupal 在主题制作方面有一套灵活的开发机制,通过使用级联的模板方案(Template Suggestions),使开发人员能够灵活地扩展和使用 Drupal 模板(.tpl.php)文件。本文将结合相关源代码简单介绍此机制的实现方式与用法。

  一个 Drupal 页面的显示可以简单地分为两步,第一步为模板脚本(template.php)准备数据,第二步将模板脚本准备好的数据填充到模板文件(.tpl.php)中。这样一来,模板文件主要用于定义网页的布局,模板脚本则包含生成模板文件中变量的逻辑代码(这样便将业务逻辑层和表示层分离,使得程序员和设计人员可以更好地分工和合作)。

  以节点页面为例,程序员通过 template_preprocess_node() 函数将节点的 $title, $content, $node_url 等数据准备好,设计人员制作 node.tpl.php 模板,并将 $title, $content, $node_url 等变量放置到模板中即可(本文的最后一段源代码的前几行,便是 template_preprocess_node() 函数在为模板文件(.tpl.php)准备变量)。

Drupal 文件与目录安全性详解(附权限和所有权修正脚本)

  服务器的文件系统应该做好安全性的配置,以确保服务器程序(如 apache)没有对文件的编辑和写权限,即是说,对服务器端口程序而言,文件是“只读”的,而文件所有权则被赋予单独的系统用户。

配置示例

  例如,大多数系统中,apache的进程由用户"apache“执行,因此这个用户应该具备对Drupal站点内的所有文件的“可读”权限,这个权限可以通过组(group)权限或者其它用户(other)权限赋予。服务器进程用户(如 apache)不应当具备对Drupal站点内文件(及目录)的“写”权限,不过对于 files 目录(上传文件的默认目录),则可以设置一个例外。

  以下是一个安全的文件权限配置示例,其中 lugir 为常规用户,apache 为服务器进程用户,files 目录是指 Drupal 的默认上传目录(即 sites/default/files),modules  目录在此作为 Drupal 站点中的目录代表,index.php 则作为 Drupal 站点内的文件代表,分别用来展示 Drupal 站点中目录和文件应有的文件权限。通过在命令行下键入 ls -al,可以得到以下输出,以查看文件权限的配置情况。

页面