快速构建Drupal模块的技巧?

5

我想知道是否有任何资源或技巧可以更快地开发基本的Drupal模块?您是否已经想到了什么方法来加速模块开发?

Drupal模块文档有点难以理解,而且非常庞大。我想知道是否有人对其进行了简化,并提供了快速完成特定任务的技巧/提示。我目前正在寻找Drupal 6和7的相关内容。如果您能帮忙节省时间,将不胜感激 :-)

5个回答

7

总的来说,我建议您购买高效程序员一书。其中没有什么惊天动地的内容,但有很多小贴士可以逐步增加您的生产力。

对于Drupal而言,Pro Drupal DevelopmentPro Drupal 7 Development 虽然不专注于开发速度,但是它们是必不可少的。

除此之外...


这里有很多好的信息。我不关注一般的编码技巧,因为我有自己使用IDE/版本控制等的方式,但Drupal特定的内容才是我所需要的。 - wajiw
谢谢你,Matt V。虽然这些东西很基础,但我从中学到了很多...之前不知道有表单生成器或数据模块(我以前用过表向导,但从未使用过数据)。人们必须时刻关注Drupal的新闻,因为每隔几个月就会有重要的发展。 - James

3

其实并没有快速掌握 Drupal 模块开发的方法。如果您了解 Drupal API 中关于模块开发的内容(安装、菜单、块、表单等),那么您就能够理解它了。我记得最难的部分是理解菜单系统。

其中一个有帮助的方法是使用简单的模块并查看它们如何工作,通过解决问题来找到自己的解决方案。阅读《Pro Drupal Development》也会有所帮助。


感谢你的建议,@kevin。这是你所说的那本书吗?http://www.drupalbook.com/ - wajiw

1
你基本上需要了解在想要做X的时候去哪里查找(API函数、钩子、系统...)。真的没有必要详细记忆所有钩子/函数及其参数等信息。这是你可以轻松查找的内容,特别是如果你使用我建议的IDE(我自己使用Netbeans)。

特别是在修改代码时,尝试开发一些技巧来快速确定负责所需更改的代码。一个例子是查看执行它的模块的hook_menu()定义,然后检查页面回调并浏览代码。要查找的内容:是否有您可以使用的钩子,它是否为表单(如果是,表单ID是什么,表单结构如何)等。

了解应该查找的位置的最佳方式(知道去哪里查找)可能是练习。每次你做某事,下一次你必须做类似的事情时就会更快。我认为也有帮助的是与他人一起使用核心/贡献模块。你不仅可以更好地学习这些模块,还可以学习如何更好地阅读和理解其他人编写的代码,并改进自己的编码风格。

尝试利用经过验证的通用“构建块”模块,如Views、Flags、Panels、CCK/Field等。然后,这些模块完成了大部分工作,您只需要提供粘合代码以正确地将它们与您的站点集成。第一次使用这些模块可能需要更多时间,但之后您很可能会节省很多时间。

话虽如此,我不确定目标是否应该是快速构建模块。我认为目标是构建更好的模块。尝试使它们通用、安全、灵活、可主题化等,以便在下一个构建类似站点时重复使用这些模块。


1

大多数基本的Drupal模块开发都是复制和粘贴。如果您使用TextMate,它的Drupal捆绑包允许您通过点和单击(因为它包含大部分必要的代码片段;您只需填写您的信息)构建模块的关键部分(菜单、主题功能等)。

遵循模块构建教程也是不错的选择;事实上,如果您每天花3或4周时间进行编码,并且已经有一些编码背景,那么您会做得很好。


是的,我正在尝试寻找一些快捷方式,因为我的Drupal开发相对于其他项目来说只是很少的工作量。我想快速实现一些功能。我有TextMate(虽然通常使用Eclipse)。我会去看看的。 - wajiw

1

Drupal 的 Gedit 可为您预配置非常好用的 Gedit 编辑器/IDE。

例如,新建一个模块:创建一个空的模块文件 mymodule.example。进入该文件。

module<tab>,它会展开成一个完整的、预定义的模块。

或在任何模块中:hook<tab>,可查看可用钩子的列表。选择例如 menu<tab>,它会展开成一个完整的、预定义的 hook_menu。使用 <tab>,可以遍历该新钩子中所有变量部分,以填写细节。

Drupal.rb 包含一个 $ drupal generate module "modulename" 命令,它会打开一个交互式 shell,允许构建模块的脚手架。这些脚手架所构建的模板是可以覆盖的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接