2

如何将现有模板文件(另一个视图的模板文件)分配给 Drupal 视图。我已经有一个模板views-view--search-issue.tpl.phpsearch_issue查看。有没有办法为另一个视图使用相同的模板archive_issue?或者是否有必要为此创建一个新模板?

4

2 回答 2

1

转到您的archive_issue 视图并选择模板文件名。从archive_issue 创建一个同名的模板文件,并从views-view--search-issue.tpl.php 中复制内容,用于您的search_issue。将其粘贴到该存档的模板文件中。由于模板更改而清除缓存,您将获得与 search_issue 中相同的模板。

于 2013-02-14T11:19:52.947 回答
1

然后你可能想要实现一些预处理钩子,让你添加一些建议。像这样的东西(它没有经过测试,也许你需要一个不同的钩子,但要得到一个想法):

function phptemplate_preprocess_views_view (&$vars) {

  $view = $vars['view'];
    if ($view->name == 'archive_issue') {
      $vars['template_files'] = 'views-view--search-issue';   
    }

}

但就像 Aniruddhsinh 所说,最简单的方法是复制粘贴您需要的代码到相应的模板中。也许你觉得你违反了 DRY manta(不要重复你自己),但在这种情况下,最好不要打破视图模板的模式。只需使用 Aniruddhsinh 解决方案即可。

来源:建议的视图模板文件

于 2013-02-14T16:00:07.387 回答