Вы здесь

Переопределить шаблон page для страницы отзывов.

0

Добрый день!
Drupal 6.
Отзывы у меня выводятся на отдельной странице при помощи модуля talk. Выводятся на странице /node/1891/otzyvy
Раньше для этой страницы работал шаблон page-node-otzyvy.tpl.php
Однако, мне понадобилось для типа product сделать отдельный шаблон page-node-type-product.tpl.php
Я поискал в интернете и нашел, что это можно сделать путём добавления в файл template.php такого кода:

    function acquia_prosper_preprocess_page(&$variables) {
      if (arg(0) == 'node' && is_numeric(arg(1))) {
        $node = node_load(arg(1));  
        $sug[] = 'page-node-type-' . $node->type;
        $variables['template_files'] = $sug;
      }
    }

В результате для нод типа product шаблон прекрасно переопределился, но, одновременно с этим этот же шаблон page-node-type-product.tpl.php стал действовать и для страниц с отзывами /node/1891/otzyvy.

Как сделать так, чтобы для станиц с отзывами остался старый шаблон page-node-otzyvy.tpl.php?

Версия Drupal: 
6.x
Категория: 
Theming
Вопрос задан 20.04.2016 - 14:16

Ответы

0

olll, вот так должно работать:

function acquia_prosper_preprocess_page(&$variables) {
  if (arg(0) == 'node' && is_numeric(arg(1))) {
    $node = node_load(arg(1));  
    $variables['template_files'][] = 'page-node-type-' . $node->type;
  }
    if (arg(2) == 'otzyvy' && is_numeric(arg(1))) {
    $variables['template_files'][] = 'page-node-otzyvy';
  } 
}
Ответ дан 20.04.2016 - 15:05
0
$variables['template_files'][] = 'page-node-type-' . $node->type;
Ответ дан 20.04.2016 - 14:49
Аватар пользователя xandeadx
xandeadx
1542