从官方文档开始,我已经尝试了所有我发现的修改 views_view_field 的方法。我还为钩子 HOOK_theme(有和没有参数'path'、'base hook')和 HOOK_theme_registry_alter 尝试了多种方法和参数,但我仍然无法在我的模块中制作树枝来覆盖原始文件。
为了让事情变得更简单,我在没有任何自定义主题的情况下进行测试,在 /templates 下没有任何文件夹,并且我尝试修改的视图链接在管理页面内。树枝建议阐明了正在显示的树枝是“稳定”主题之一。
主题中的模板优先于模块中的模板,因此您需要HOOK_theme_registry_alter
强制 Drupal 从模块文件夹中获取模板。
/**
* Implements hook_theme_registry_alter().
*/
function mymodule_theme_registry_alter(&$theme_registry) {
// Replace the path to the registered template so that Drupal looks for
// it in your module's templates folder.
$theme_registry['views_view_field']['path'] = drupal_get_path('module', 'mymodule') . '/templates';
}
确保清除缓存以强制更新主题注册表。