进行 Drupal 开发时有许多模块和工具可供使用,其中最常用的两项便是 Devel 及 Drupal for Firebug。本文和《Drupal常用开发工具(二)——Drupal for Firebug》将分别对它们进行介绍。
与本文相关的很多内容可以通过 Devel Demo 模块进行查看,如有纠正或补充可以在官方问题队列中发帖,也可以在本文后进行留言。
Devel模块
Devel 集合了多个开发辅助模块,除了作为核心的 Devel 模块外,Devel 模块包中还包含了其它子模块,如 Devel Generate 可用于生成测试内容、术语和用户等。(注意Theme Developer 模块已经从Devel 模块中分离出来成为单独的模块)
Devel 的子模块并不在本文中进行介绍,如有兴趣可到项目页面阅读相关的说明文档。
dpm()
使用drupal_set_message() 函数将变量显示在页面的 ‘message’ 区域。使用此函数,可以变量进行跟踪。因为Devel模块现在使用Krumo 对变量进行显示,所以输出结果会变得复杂一些。
dpm($input, $name = NULL);
如果因为某些原因,你没有使用Krumo,可以使用 $name 参数来对不同的 dpm() 调用进行区分。
dvm()
使用drupal_set_message() 函数将var_dump() 函数处理变量的结果显示在 ‘message’ 位置。这个函数的输出比基于Krumo 的dpmt() 函数的结果要难读一些,但使用它可以很方便的进行复制粘贴。
dvm($input, $name = NULL);
dpr()
将变量以易读的格式显示在页面头部(不使用Krumo),对于没有 $message 变量的主题会是一个非常好的选择。
dpr($input, $return = FALSE, $name = NULL);
将 $return 参数设置为TRUE,则将显示数据以函数结果返回而不进行打印。
dvr()
与dpr() 基本相同,不过输出结果经过 var_dump() 函数得出。
kpr()
类似dpm(),不过是在页面上方显示Krumo形式的输出结果,适用于页面模板中没有 $message 变量的情况。
dargs()
输出传入当前路由函数的参数值。以下图为例,参数分别为 ‘foo’和’42’。当你不确定Drupal路由函数当前接收到的参数是什么时,可以使用这个函数进行确认。(译注:其实就是将 Drupal 内核 args() 函数的结果显示到页面上)
dargs();
dd()
将变量记录到临时目录下名为drupal_debug.txt 的记录文件中,此函数的所有输出会追加到记录文件后,以方便开发者跟踪查看变量的变化情况。
- 如果使用Mac OS X,可以使用Logging Console对记录文件中的内容进行查看。
- 如果使用Linux,则可以使用 ‘tail –f drupal_debug.txt’ 命令查看被记录的数据。
dd($data, $label = NULL)
ddebug_backtrace()
打印函数调用堆栈
db_queryd()
此函数是 db_query() 的调试版本,它能将数据库查询结果或错误信息显示到浏览器。当想要监控一些数据库请求信息,但又不希望列出当前页面所进行的所有数据库请求会很有用。
db_queryd($query, $args = array());
原文标题:《Drupal常用开发工具(一)——Devel模块》
原文地址:http://drupalct.org/drupal-development/drupal-development-module-devel.html
相关推荐
本教程将通过一个具体的示例——“最近发布内容”模块(命名为`current_posts`)——来详细介绍 Drupal 7 模块的开发过程。 #### 二、准备工作 在开始编写模块之前,有一些基础工作需要完成: 1. **环境搭建**:...
此外,像 Devel 模块和 XHProf 工具可以帮助开发者调试和优化 Drupal 网站的性能。 在 Drupal 6 版本中,虽然这些功能已经相对成熟,但随着 Drupal 7 和 8 的发布,这些特性和数据模型得到了进一步增强和优化,例如...
### Drupal常用第三方模块使用手册知识点总结 #### 一、引言 Drupal是一个强大的开源内容管理系统(CMS),被广泛应用于各种规模的网站开发中。通过使用第三方模块,Drupal开发者能够极大地扩展其功能性和灵活性。本...
Drupal模块开发以模块为基本单位,每个模块可以实现一个或多个功能。在开始开发之前,熟悉Drupal核心概念和结构是必不可少的,比如内容类型、区块、主题和钩子等。通过深入理解这些组件,开发者可以更有效地构建模块...
总的来说,"Drupal资料集——快速入门"会引导你熟悉Drupal的基本操作,学习如何创建内容、管理用户、安装模块和主题,以及进行初步的开发工作。随着对Drupal的深入理解和实践,你将能够构建出功能丰富的、满足特定...
"Drupal模块分类"是一个专门针对Drupal平台的工具,旨在帮助用户更有效地管理和组织大量的可用模块。这个工具的核心特性就是提供了模块的分类和过滤功能,使得在众多的模块中找到合适的变得更为简便。 首先,我们要...
- **模块(Module)**:模块是Drupal的核心组成部分之一,用于添加新的功能或增强现有功能。可以通过官方模块库或自定义开发进行扩展。 - **主题(Theme)**:主题负责控制网站的外观和布局,提供了高度定制化的界面设计...
- **APIs**:Drupal提供了一系列API,如节点API、用户API等,这些API封装了常用的操作,简化了开发流程。 - **数据库操作**:通过drupal_get_schema()、db_query()等函数来处理数据库相关的任务。 - **主题层**:...
Views是Drupal的一个核心模块,用于展示和管理网站数据。开发者可以通过Views创建自定义列表、搜索结果、滑块等,无需编写复杂的查询代码。 7. **工作流与权限管理** Drupal提供了精细的权限控制和多用户角色管理...
在开发过程中,可以使用Devel模块的`dsm()`函数来输出调试信息,或者启用Drupal的错误日志功能来跟踪HOOK的执行情况。 总结: Drupal的HOOK机制是其强大之处,它使得开发者能够深入参与到系统的核心流程中,实现...
标题与描述中的关键词“Drupal 7.15 统计模块使用”指向了Drupal系统中一个重要的功能模块——统计模块(statistics)。Drupal是一个开源的内容管理系统(CMS),被广泛用于构建各种类型的网站,从个人博客到大型企业级...
### Drupal6.x模块开发知识点详解 #### 一、模块入门介绍与目录构建 Drupal作为一款全球知名的开源内容管理系统(CMS),其模块化的设计允许开发者轻松扩展功能,满足各种定制需求。**模块**实质上是一系列函数的...
《Drupal专业开发指南(中文版)》是为那些希望深入理解并掌握Drupal开发的专业人士量身打造的一本教程。这本书由葛红儒翻译,将帮助中文读者更好地理解和应用Drupal技术。 Drupal的核心特性之一是其模块化设计,这...
为了方便,包括了drupal中常用的一些第三方模块,其中包括ctools captcha panels date cck webform wysiwyg views rules link imce ubercart等26个
《Drupal Development Tricks for Designers》是一本由 Dani Nordin 编写的专注于 Drupal7 开发技巧的专业书籍。本书适用于不同年龄层的开发人员,无论是新手还是有一定经验的开发者都能从中受益。书中通过丰富的...
4. **改进的用户体验**:为了提供更好的用户界面和交互,Drupal 9引入了新的编辑工具和模块,如CKEditor 5,使得内容创作更加直观和高效。 5. **更好的性能**:此版本还注重提高网站性能,包括更快的页面加载速度和...
- **环境搭建**:介绍如何设置Drupal开发环境,包括服务器配置、版本控制工具的使用等。 - **模块创建**:指导读者如何从零开始创建一个新的模块,涉及模块的基本结构、钩子函数的使用等。 - **高级功能**:探讨...
7. **钩子(Hooks)**:Drupal的模块开发中,钩子允许模块在特定事件发生时执行代码。例如,`hook_comment_insert()` 钩子可以在评论被创建时调用,用于执行额外的操作,如发送通知邮件。 8. **视图(Views)**:...