不能让drupal 7识别内容类型的页面模板

时间:2015-01-08 16:07:10

标签: php templates drupal-7 hook drupal-theming

我有一个drupal 7网站,我想制作二级头版。问题是“page - front.tpl.php”是一个两列布局,“page.tpl.php”是一列布局。如果我使用节点模板,它将它推到一列的主体中。

主题名称是“egress”,内容类型的机器名称是“登陆”,但是当我尝试挂钩页面时 - 登陆方式与我做节点相同 - 登陆没有任何反应。什么都没有。

我正在清除缓存,并在每次更改模板文件时刷新页面。

我在“page.tpl.php”中试过的一个代码

function egress_preprocess_page(&$vars) {
    global $node;
    if ($node->type == 'landing') {
        $vars['theme_hook_suggestions'] = array('page__landing'); 
    }
}

另一个

function egress_preprocess_page(&$vars) { 
    if ($vars['node']->type == "landing_page") {
        $vars['template_files'][] = 'page--landing';
    }
}

任何想法?

1 个答案:

答案 0 :(得分:0)

以下内容应该转到主题的template.php而不是page.tpl.php

function egress_preprocess_page(&$vars) {
    // For page--(node-type).tpl.php
    if (isset($vars['node'])) {
        $vars['theme_hook_suggestions'][] = 'page__'. $vars['node']->type;
    }