-1

我需要为我创建的视图创建一个模板(我知道该怎么做),但我不希望页面被包装在 drupal html.php 代码中。我希望结果页面只是我创建的模板文件中的内容。

我该怎么做呢?

我确实发现这可以满足我对内容类型的需求lab

function yourthemename_preprocess_html(&$vars) {
  if ($node = menu_get_object()) {
    if($node->type == "lab") {
      $vars['theme_hook_suggestions'][] = 'html__lab';
    }
  }
}

然后创建了一个名为:html--lab.tpl.php 的文件

这个方法可以用于我的视图吗?它必须是if($node->type == "lab")吗?我可以使用类似的东西吗if($view == "viewname")

谢谢 C

4

1 回答 1

2

我认为当您说“创建视图”时,您的意思是视图+页面显示。因此,当您浏览到http://mystite.com/mypage时,它​​会显示视图的内容。

在这种情况下,您可以通过一些小的修改来使用您的代码。

function yourthemename_preprocess_html(&$vars) {
  if (arg(0) == 'mypage') {        
    $vars['theme_hook_suggestions'][] = 'html__mypage';        
  }
}

您必须创建正确的 .tpl.php 文件并清除缓存。

于 2012-05-02T15:33:03.597 回答