Error message

You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).

function module_hook

Determines whether a module implements a hook.

Parameters

$module: The name of the module (without the .module extension).

$hook: The name of the hook (e.g. "help" or "menu").

Return value

TRUE if the module is both installed and enabled, and the hook is implemented in that module.

Related topics

Hooks
Allow modules to interact with the Drupal core.
9 calls to module_hook()
drupal_check_module in includes/install.inc
Checks a module's requirements.
field_help in modules/field/field.module
Implements hook_help().
field_system_info_alter in modules/field/field.module
Implements hook_system_info_alter().
help_page in modules/help/help.admin.inc
Menu callback; prints a page listing general help for a module.
module_disable in includes/module.inc
Disables a given set of modules.

... See full list

File

includes/module.inc, line 688

Code

function module_hook ($module, $hook) {
 $function = $module . '_' . $hook;
 if (function_exists ($function)) {
 return TRUE;
 }
 // If the hook implementation does not exist, check whether it may live in an
 // optional include file registered via hook_hook_info().
 $hook_info = module_hook_info ();
 if (isset($hook_info[$hook]['group'])) {
 module_load_include ('inc', $module, $module . '.' . $hook_info[$hook]['group']);
 if (function_exists ($function)) {
 return TRUE;
 }
 }
 return FALSE;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.