Override default table template In custom module How can I use a custom module to override views-view-table.tpl.php? I understand how to do it for a theme, but I want to provide the template using a custom module. I've already created my replacement table theme file. I've put it in a folder called "templates" inside my custom module. Now I just need to understand what hook(s) I should use to tell views to check my module for replacement templates.
Add a module path to the Drupal 7 theme registry by implementing hook_theme_registry_alter().

Here's an example - replace the usual with your own data :)


/**
 * Implements hook_theme_registry_alter().
 */

function MYMODULE_theme_registry_alter(&$theme_registry) {

  // Get module path
  $path = drupal_get_path('module', MYMODULE);

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

  // Itterate through all found template file objects.
  foreach ($template_files as $key => $template_file) {
    // If the template has not already been overridden by a theme.
    if (!preg_match('#/themes/#', $theme_registry[$key]['theme path'])) {
      // Alter the theme path and template elements.
      $theme_registry[$key]['theme path'] = $path;
      $theme_registry[$key] = array_merge($theme_registry[$key], $template_file);
    }
  }
}