Php hook_node_type()和hook_nodeapi()之间的差异
我试图理解和之间的区别 我尝试将Php hook_node_type()和hook_nodeapi()之间的差异,php,drupal,drupal-6,Php,Drupal,Drupal 6,我试图理解和之间的区别 我尝试将hook\u node\u type与story节点和一个简单的dsm一起使用,但没有得到任何结果 function mymod_node_story($op, $info){ dsm($info); } hook\u node\u type用于在更改节点类型时挂接。如果您希望允许对节点类型、故事等进行评论,请使用Fx hook\u nodeapi用于连接实际节点可能发生的不同过程,如保存节点、查看节点等 没有针对特定节点的钩子,但是您通常会这样做 fun
hook\u node\u type
与story
节点和一个简单的dsm
一起使用,但没有得到任何结果
function mymod_node_story($op, $info){
dsm($info);
}
hook\u node\u type
用于在更改节点类型时挂接。如果您希望允许对节点类型、故事等进行评论,请使用Fx
hook\u nodeapi
用于连接实际节点可能发生的不同过程,如保存节点、查看节点等
没有针对特定节点的钩子,但是您通常会这样做
function module_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
if ($node->type == 'story') {
switch ($op) {
case 'load':
...
}
}
}
hook\u node\u type
用于在更改节点类型时挂接。如果您希望允许对节点类型、故事等进行评论,请使用Fx
hook\u nodeapi
用于连接实际节点可能发生的不同过程,如保存节点、查看节点等
没有针对特定节点的钩子,但是您通常会这样做
function module_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
if ($node->type == 'story') {
switch ($op) {
case 'load':
...
}
}
}
每次删除或重命名内容类型时都会调用hook\u node\u type()。钩子的目的是重命名用于内容类型的Drupal变量(对于内容类型编辑表单中包含的任何表单字段,从中自动完成),或者删除包含已删除内容类型值的Drupal变量
hook\u nodeapi()
在从数据库加载节点、显示节点编辑表单、可视化节点、从搜索模块索引节点、RSS提要或保存节点时,为每个节点调用。模块应实现钩子节点api()
以更改由其他模块实现的内容类型的节点。每次删除或重命名内容类型时都会调用钩子节点type()。钩子的目的是重命名用于内容类型的Drupal变量(对于内容类型编辑表单中包含的任何表单字段,从中自动完成),或者删除包含已删除内容类型值的Drupal变量
hook\u nodeapi()
在从数据库加载节点、显示节点编辑表单、可视化节点、从搜索模块索引节点、RSS提要或保存节点时,为每个节点调用。一个模块应该实现hook\u nodeapi()
来为其他模块实现的内容类型更改节点。我明白了。是否有一个钩子与hook\u nodeapi相同,但只针对特定的节点类型?如果它存在的话,看起来像是钩子故事。我明白了。是否有一个钩子与hook\u nodeapi相同,但只针对特定的节点类型?如果存在的话,它看起来像hook\u nodeapi\u story
。模块mymod.module的hook\u node\u type()
的实现是mymod\u node\u type()
,对于任何内容类型都会调用它,独立于实现内容类型的模块。hook\u node\u type()的实现
对于模块mymod.module是mymod\u node\u type()
,它是为任何内容类型调用的,独立于实现该内容类型的模块。