Отображение шаблона конкретного раздела

Главные вкладки

Аватар пользователя lopata24 lopata24 24 октября 2009 в 1:36

к сожалению, php не знаю, поэтому обращаюсь за помощью.
Помогите модифицировать вот такой код из template.php

<?php
function phptemplate_preprocess_page(&$vars) {
  if (
module_exists('path')) {
    
$alias drupal_get_path_alias(str_replace('/edit','',$_GET['q']));
    if (
$alias != $_GET['q']) {
      
$suggestions = array();
      
$template_filename 'page';
      foreach (
explode('/'$alias) as $path_part) {
        
$template_filename $template_filename '-' $path_part;
        
$suggestions[] = $template_filename;
      }
    }
    
$vars['template_files'] = $suggestions;
  }
}
?>

в данном виде этот код создает для моих страниц дизайн всех подкатегорий, т.е. если есть файл page-music.tpl.php то одинаково будут отображать и страница http://мой сайт/music и страница http://мой сайт/music/albums
Это есть круто! НО!!!
Мне нужно сделать так только для одной конкретной категории, а не для всего сайта! Подскажите как модифицировать этот код, чтобы он искал не все подкатегории, а только например для нод по адресу http://мой сайт/category/tags/balblabla и брал для них дизайн из page-category.tpl.php или page-category-tags.tpl.php

Заранее спасибо!

Комментарии

Аватар пользователя lopata24 lopata24 24 октября 2009 в 11:45

"Nikit" wrote:
print_r($vars);
там будет $node, внутри неё будет taxonomy, а вот там уже искомая нам категория.

Было бы здорово, если бы это помогло!
Но
"lopata24" wrote:
к сожалению, php не знаю, поэтому обращаюсь за помощью.

Куда вставлять сие, что Вы прислали подскажите?

Аватар пользователя Nikit Nikit 25 октября 2009 в 2:29

упростим тогда:

<?php
function phptemplate_preprocess_page(&$vars) {
  if (module_exists('path')) {
    $alias = drupal_get_path_alias(str_replace('/edit','',$_GET['q']));
    if ($alias != $_GET['q'] && (strpos($alias, 'tags')>0) ) {
      $suggestions = array();
      $template_filename = 'page';
      foreach (explode('/', $alias) as $path_part) {
        $template_filename = $template_filename . '-' . $path_part;
        $suggestions[] = $template_filename;
      }
    }
    $vars['template_files'] = $suggestions;
  }
}?>
Аватар пользователя lopata24 lopata24 25 октября 2009 в 20:51

Блин, что-то сейчас сел все привести в порядок и обнаружил, что этот код работает ко всему сайту целиком, а не только к разделу category, как мне нужно (
Что не так?

Аватар пользователя Nikit Nikit 27 октября 2009 в 13:09

<?php
function phptemplate_preprocess_page(&$vars) {
if (module_exists('path')) {
$alias = drupal_get_path_alias(str_replace('/edit','',$_GET['q']));
if ($alias != $_GET['q'] && (strpos($alias, 'category')>0) && (strpos($alias, 'tags')>0) ) {
$suggestions = array();
$template_filename = 'page';
foreach (explode('/', $alias) as $path_part) {
$template_filename = $template_filename . '-' . $path_part;
$suggestions[] = $template_filename;
}
}
$vars['template_files'] = $suggestions;
}
}?>
хыхы.