function ctools_plugin_api_include

cis7 ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)
cle7 ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)
elmsmedia7 ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)
icor7 ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)
meedjum_blog7 ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)
mooc7 ctools_plugin_api_include($owner, $api, $minimum_version, $current_version)

Load a group of API files.

This will ask each module if they support the given API, and if they do it will load the specified file name. The API and the file name coincide by design.


$owner: The name of the module that controls the API.

$api: The name of the api. The api name forms the file name: $module.$, though this can be overridden by the module's response.

$minimum_version: The lowest version API that is compatible with this one. If a module reports its API as older than this, its files will not be loaded. This should never change during operation.

$current_version: The current version of the api. If a module reports its minimum API as higher than this, its files will not be loaded. This should never change during operation.

Return value

The API information, in case you need it.

3 calls to ctools_plugin_api_include()
features_include_defaults in sites/all/modules/ulmus/features/features.module
Load features includes for all components that require includes before collecting defaults.
views_module_include in sites/all/modules/ulmus/views/views.module
Load views files on behalf of modules.
_ctools_export_get_defaults in sites/all/modules/ulmus/ctools/includes/
Call the hook to get all default objects of the given type from the export. If configured properly, this could include loading up an API to get default objects.


sites/all/modules/ulmus/ctools/includes/, line 143
Contains routines to organize and load plugins. It allows a special variation of the hook system so that plugins can be kept in separate .inc files, and can be either loaded all at once or loaded only when necessary.


function ctools_plugin_api_include($owner, $api, $minimum_version, $current_version) {
  static $already_done = array();

  $info = ctools_plugin_api_info($owner, $api, $minimum_version, $current_version);
  foreach ($info as $module => $plugin_info) {
    if (!isset($already_done[$owner][$api][$module])) {
      if (isset($plugin_info["$api file"])) {
        $file = $plugin_info["$api file"];
      else if (isset($plugin_info['file'])) {
        $file = $plugin_info['file'];
      else {
        $file = "$module.$";

      if (file_exists(DRUPAL_ROOT . "/$plugin_info[path]/$file")) {
        require_once DRUPAL_ROOT . "/$plugin_info[path]/$file";
      else if (file_exists(DRUPAL_ROOT . "/$file")) {
        require_once DRUPAL_ROOT . "/$file";
      $already_done[$owner][$api][$module] = TRUE;

  return $info;



Error message

  • Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/elmsln_community/ in drupal_send_headers() (line 1499 of /var/www/html/elmsln_community/
  • Error: Call to undefined function apc_delete() in DrupalAPCCache->clear() (line 289 of /var/www/html/elmsln_community/
The website encountered an unexpected error. Please try again later.