You are here

function apachesolr_nan_theme_registry_alter in Apache Solr Not-A-Node 7.2

Implements hook_theme_registry_alter().

Approach borrowed from https://www.drupal.org/node/715160. The idea is to use our entity theme template in the module directory first, and if someone wants to override with a theme dir template, they can.

File

./apachesolr_nan.module, line 50
Provides hook and common functions for non-node searching.

Code

function apachesolr_nan_theme_registry_alter(&$theme_registry) {

  // Defined path to the current module.
  $module_path = drupal_get_path('module', 'apachesolr_nan') . '/theme';

  // Find all .tpl.php files in this module's folder recursively.
  $template_file_objects = drupal_find_theme_templates($theme_registry, '.tpl.php', $module_path);

  // Iterate through all found template file objects.
  foreach ($template_file_objects as $key => $template_file_object) {

    // If the template has not already been overridden by a theme.
    if (!isset($theme_registry[$key]['theme path']) || !preg_match('#/themes/#', $theme_registry[$key]['theme path'])) {

      // Alter the theme path and template elements.
      $theme_registry[$key]['theme path'] = $module_path;
      $theme_registry[$key] = array_merge($theme_registry[$key], $template_file_object);
      $theme_registry[$key]['type'] = 'module';
    }
  }
}