Drupal 7根据内容类型无法正常创建自定义模板

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Drupal 7根据内容类型无法正常创建自定义模板相关的知识,希望对你有一定的参考价值。

我想基于'内容类型'创建自定义模板文件。我有一个名为(机器名称)的内容类型:oldperson_profile,我在“templates”文件夹下创建了一个page--oldperson_profile.php文件。现在,基于我在Google上找到的教程,我在template.php文件中做了以下修改:

function mytheme_preprocess_page(&$variables, $hook) {

 if (isset($variables['node']->type)) {
    $variables['theme_hook_suggestions'][] = 'page__' . $variables['node']->type;
  }

}

现在我已经清除了缓存并刷新了页面的前端,但没有任何改变。我从https://www.digett.com/insights/overriding-page-templates-content-type-drupal-7那里接受了这个想法。我做错了什么?

答案

您的模板文件名错误,将下划线_更改为短划线' - '作为您的文件名,而且您缺少tpl所以它应该是

page--oldperson-profile.tpl.php

以上是关于Drupal 7根据内容类型无法正常创建自定义模板的主要内容,如果未能解决你的问题,请参考以下文章

Drupal 7 Views 自定义视图模板字段

自定义模板中的Drupal 7自定义表单

Drupal 7 自定义内容类型主题从 node.tpl 隐藏页眉/页脚

php 基于内容类型的Drupal 8自定义页面模板(建议)(页面 - [content-type] .html.twig)

在Drupal 7中的页面之间传递变量

Drupal 7 - 自定义模块:在节点提交中使用自定义表单输入