9

在 Drupal 7 中,每个核心模块都有一个*.api.php文件,其中 * 是模块的名称。例如

modules/node/node.api.php
modules/path/path.api.php

这些文件是干什么用的?它们包含以 开头的函数hook_,以及(我认为)模块调用的钩子的名称。例如

modules/system/system.api

拥有

function hook_entity_view($entity, $type, $view_mode, $langcode) {
  $entity->content['my_additional_field'] = array(
    '#markup' => $additional_field,
    '#weight' => 10,
    '#theme' => 'mymodule_my_additional_field',
  );
}

系统调用了一个entity_view钩子,您可以在自己的模块中实现它,但是(它没有出现)hook_entity_view曾经被调用过。

这些功能有什么用。他们曾经被系统调用过吗?如果有,什么时候?如果没有,他们为什么在那里?

4

1 回答 1

16

不,它只是按模块描述钩子的文档文件。关于 hook_entity_view:您可以将其添加到自定义模块中:YOURMODULENAME_entity_view(...)。

于 2011-02-15T01:42:16.910 回答