Drupal 6
CCK 字段命名规则
由 lugir 于 星期一, 02/06/2012 - 12:54 发布通用规则
进行 Drupal 项目时,CCK 字段的命名规则十分重要,通过合理的命名规则,可以避免字段名称冲突,并构建机器名通俗易读的 CCK 字段。
CCK 字段命名规则为:field_[内容类型英文名]_[字段英文名]
说明:
- 命名规则中的 field_ 为固定前缀,所有 CCK 字段均以 field_ 开头
- [内容类型英文名],如用于存储产品信息的“产品”内容类型,在字段中,应该使用 product
- [字段英文名],产品内容类型包含产品的图片,则此字段的英文名可以使用 image 或 preview
如此一来,当用户在系统中看到 field_product_image 时,便能很快通过字段名称了解到这是与“产品图片”相关的字段。
* 虽然 CCK 在 D7 中已经被整合到 Drupal 核心,但此命名规则对 D7 同样适用。
Drupal 6 升级到 Drupal 7 注意事项及技巧
由 lugir 于 星期二, 01/03/2012 - 19:35 发布本文档记录 Drupal 6 升级到 Drupal 7 的一些注意事项和处理技巧,从而避免在升级过程中遇到一些常见问题。
注意事项:
- 禁用所有主题,并将 Garland 设为默认主题
- 禁用所有第三方模块和自定义模块
如果没有执行以上操作,常常会出现找到不指定函数而导致网站无法打开的情况,因此在执行升级前,请确保禁用了所有的主题和模块。
如果升级之后网站不能打开,查看 Web 服务器日志,一般能够定位到出问题的原因。
技巧:在升级之后发现有模块和主题没有禁用,可以通过修改 Drupal 数据库中 system 表中 status 列的值来设置主题或模块的状态(并不推荐这个办法,但这样做确实能解决一些问题。大家最好还是在进行升级前确认禁用了所有第三方和自定义的模块和主题)
如果网站数据较多,升级过程会变得十分漫长,可能会长达几个小时,因此在进行数据库更新之前,可以:
整合到 Drupal 7 核心的 Drupal 6 模块
由 lugir 于 星期日, 01/01/2012 - 21:04 发布本文档提供了一份模块清单,这些模块有 Drupal 6 版本,在升级到 Drupal 7 之后,这些模块的功能已经部分或已完全被整合到 D7 的核心了。
以个列表还在不断更新,因此并非最终版本,最新版本的原文可以查看《Drupal 6 contributed modules that are in Drupal 7 core》
可卸载的模块
以下这些模块的功能已经包含在 Drupal 7 的核心中,它们的升级不涉及数据迁移。当网站从 D6 升级到 D7 时,可以将这些模块从模块目录下移除。升级完成后,可能需要对这些模块进行重新配置以便恢复 D6 时的功能。(对于包含复杂配置的模块,我们也希望模块维护人员提供自动化升级能力)
Drupal 6 到 Drupal 7 升级规划
由 lugir 于 星期日, 01/01/2012 - 19:42 发布在进行网站升级之前,还有一大堆事情需要先做。在升级前了解已有网站如何建设是非常重要的。在真正升级站点之前在开发环境先进行测试是最好不过的了。
现有模块和主题
找出网站上安装的模块(包括那些已安装,但之后被禁用的模块)
找出网站上安装和使用的主题
将这些模块和主题列成一张清单,这样有利于升级时进行核对,这份清单还为升级过程中禁用和重新启用模块带来方便。
禁用和卸载未使用的模块
当对网站中的模块进行完调查之后,能够知道哪些模块实际上并未使用。出于安全性和性能的考虑,我们总是推荐将未使用的模块卸载并移除。
第三方模块升级
在升级前调查关于模块的情况:
Drupal 6 网站常用基础模块推荐列表
由 lugir 于 星期二, 12/20/2011 - 15:10 发布本文档是《Drupal 架构师建站规范》手册的一部分。
文档整理了搭建 Drupal 6 网站时推荐安装的模块,以及对这些模块的简介。Drupal 7 用户可参考《Drupal 7 网站常用基础模块推荐列表》
处理节点表单提交之后的页面跳转
由 lugir 于 星期二, 11/29/2011 - 09:30 发布在普通情况下,当用户提交节点表单后会被重定向到对应的节点页面,如果在 URL 中传入了 ?destination=path/xxx 这样的参数,提交表单后用户就会被重定向到 destination 设置的页面。
除此之外,开发人员还可以通过为节点表单设置重定向属性,来控制表单提交后的重定向路径。
下面的代码通过应用 hook_form_alter(),判断当表单ID为"story_node_form"时,设置表单的重定向属性(#redirect)
使用 Drupal API 添加词汇表
由 lugir 于 星期日, 11/20/2011 - 15:42 发布Drupal 使用 taxonomy_save_vocabulary() 函数创建词汇表(Vocabulary),通过定义词汇表数组,然后作为参数传入 taxonomy_save_vocabulary() 函数,程序执行时便可将定义的词汇表添加进数据库。
CCK 富文本框字段拖拽 Bug 的解决办法
由 lugir 于 星期日, 11/13/2011 - 16:32 发布hook_block() 代码示例
由 lugir 于 星期一, 11/07/2011 - 11:28 发布Fox Slideshow - 基于 Views Slideshow 的幻灯片 Features 包下载
由 lugir 于 星期六, 10/29/2011 - 21:43 发布在《Drupal 通用网站解决方案》中有提到,幻灯片是很多网站的必备元素之一。不过要配置一个定制性强的幻灯片需要不少的配置工作。
为了减少一些重复性的配置工作,这里提供了一个的 Features 包,大家只需下载并在模块管理页面启用,就可以拥有一个配置好的基于 Views Slideshow 的简单幻灯片。同时在这些基础上进行一些配置,还可以实现复杂的幻灯片制作。(关于 Features 模块的介绍,请参见《Features》)
说明:为避免与 其它的模块冲突,我在配置这个幻灯片的过程中对一些容易冲突的命名加入了前缀 Fox,比如添加了一个内容类型 "Fox Slideshow (fox_slideshow)",添加了图片字段 fox_slideshow_image 等等。(如果与某个模块出现的冲突的情况,还请大家留言告知,以便对此特性包进行更新)。