放在其它文件中的页面回调

g089h515r806 的头像
Submitted by g089h515r806 on 星期日, 2009-08-02 14:20

如果你没有特别指定的话,那么Drupal会假定你把页面回调放在了.module文件中。在Drupal6中,对于每个页面请求,为了尽可能的降低为其加载的代码总量,许多模块被拆分成了多个部分。如果回调函数不在当前的.module文件中的话,可以使用菜单项中的file键,来指定哪个文件包含了该函数。我们在第2章中编写注释模块的时候,就用到了file键。

 

    如果你定义了file键,那么Drupal将会在你的模块目录下查找该文件。如果你的页面回调是由其它模块提供的话,也就是说该文件不在你的模块目录中,那么你需要告诉Drupal在查找该文件时所用的文件路径。使用file path键,就可以轻松的实现这一点了。我们在第2章的“定义你自己的管理部分”就用到了它。

Drupal版本:

Drupal现场培训(地点深圳,时间8月29,30号)

g089h515r806 的头像
Submitted by g089h515r806 on 星期六, 2009-08-01 15:54

Drupal现场培训,

时间,2009年8月29-30号,

培训地点:深圳市 罗湖区 布心路 翠竹北 华达园A205

课程内容:Drupal网店型网站,SNS型网站建设

费用:500元,同时赠送网络学员名额,含2顿午餐。

小班授课,1人起,5人满员,每天上午3小时,下午4小时授课,现场答疑。

论坛:

创建一个菜单项

g089h515r806 的头像
Submitted by g089h515r806 on 星期六, 2009-08-01 15:26

老葛的Drupal培训班 Think in Drupal

通过在你的模块中使用菜单钩子来钩住这一流程。这样你就可以定义包含在menu_router表中的菜单项。让我们构建一个名为menufun.module的示例模块,通过它来学习菜单系统。我们将Drupal路径menufun映射到PHP函数menufun _hello()上。首先,我们需要一个名为menufun.info的文件,位于sites/all/modules/custom/menufun/menufun.info:

Drupal版本:

将URL映射为函数

g089h515r806 的头像
Submitted by g089h515r806 on 星期六, 2009-08-01 15:25

通常采用的方式如下所示:Drupal请求所有启用的模块来提供一个菜单项数组,每个菜单项都包含了一个数组,其中以路径为键,里面还包含了路径的一些相关信息。一个模块必须提供的一段信息就是页面回调page callback)。在这里,回调就是一个PHP函数的名称,当一个浏览器请求一个特定的路径时就会调用它。当一个请求到达时,Drupal将执行以下步骤:

Drupal版本:

回调映射

g089h515r806 的头像
Submitted by g089h515r806 on 星期六, 2009-08-01 15:23

当一个Web浏览器向Drupal发送一个请求时,它向Drupal传递了一个URL。通过这一信息,Drupal必须指出要运行哪段代码以及如何处理这一请求。这也就是通常所说的路由或者分发。Drupal截掉URL的基部分并使用后面的部分,后者被称之为Drupal路径。举例来说,如果URL是http://example.com/?q=node/3,则Drupal路径就为node/3。如果你使用了Drupal的简洁URL特性,那么在浏览器中的URL就是http://example.com/node/3,但是在你的web服务器中,在Drupal收到这个URL以前,web服务器已将其重写为http://example.com/?q=node/3;所以,对于Drupal来说,这两者是一样的。

Drupal版本:

页面

Subscribe to Think in Drupal RSS