function module_load_include

Loads a module include file.


// Load from the node module.
module_load_include('inc', 'node', 'node.admin');

// Load from the node module.
module_load_include('inc', 'node', 'content_types');

Do not use this function to load an install file, use module_load_install() instead. Do not use this function in a global context since it requires Drupal to be fully bootstrapped, use require_once DRUPAL_ROOT . '/path/file' instead.


$type: The include file's type (file extension).

$module: The module to which the include file belongs.

$name: (optional) The base file name (without the $type extension). If omitted, $module is used; i.e., resulting in "$module.$type" by default.

Return value

The name of the included file, if successful; FALSE otherwise.

46 calls to module_load_include()
dashboard_admin_blocks in drupal/modules/dashboard/dashboard.module
Page callback: Builds the page for administering dashboard blocks.
form_get_cache in drupal/includes/
Fetches a form from cache.
form_load_include in drupal/includes/
Ensures an include file is loaded whenever the form is processed.
forum_overview in drupal/modules/forum/
Form constructor for the forum overview form.
hook_user_cancel in drupal/modules/user/user.api.php
Act on user account cancellations.

... See full list


drupal/includes/, line 326
API for loading and interacting with Drupal modules.


function module_load_include($type, $module, $name = NULL) {
  static $files = array();
  if (!isset($name)) {
    $name = $module;
  $key = $type . ':' . $module . ':' . $name;
  if (isset($files[$key])) {
    return $files[$key];
  if (function_exists('drupal_get_path')) {
    $file = DRUPAL_ROOT . '/' . drupal_get_path('module', $module) . "/{$name}.{$type}";
    if (is_file($file)) {
      require_once $file;
      $files[$key] = $file;
      return $file;
    else {
      $files[$key] = FALSE;
  return FALSE;