не удается заставить Drupal 7 распознать шаблон страницы для типа контента

0

У меня есть сайт drupal 7, на котором я хочу сделать второстепенные передние страницы. проблема заключается в том, что "page - front.tpl.php" - это двухстолбцовый макет, а "page.tpl.php" - это однострочный макет. если я использую шаблон узла, он выталкивает его в тело одного столбца.

имя темы - "выход", имя машины для типа контента "приземление", но когда я пытаюсь подключить страницу - посадку так же, как я делаю узел - посадка ничего не происходит. ничего.

я очищаю кеш и жестко обновляю страницу при каждом изменении файлов шаблонов.

один код, который я пробовал в "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';
    }
}

любые идеи?

  • 0
    попробуйте поставить выход; в вашем коде, чтобы увидеть, если он работает, если он не пытается сбросить реестр вашей темы, а затем посмотреть, что происходит.
Теги:
templates
drupal-7
hook
drupal-theming

1 ответ

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;
    }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню