Отображение колонок/блоков для определенного типа материала

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

Аватар пользователя godson godson 13 мая 2010 в 8:50

У меня такой вопрос... и я пока не вижу выхода... создал отдельный тип материалов, где будут размещаться газетные публикации. Для этого мне нужна более широкая страница, и есть желание просто убрать правую колонку ТОЛЬКО для этого типа...
Может быть кто-нибудь знает, как это осуществить?

Комментарии

Аватар пользователя godson godson 13 мая 2010 в 10:38

context? Насколько мне подсказывает интуиция - это должно быть название модуля? Но у меня в основных модулях такого нет... Или это что-то другое?

Аватар пользователя plague plague 13 мая 2010 в 11:30

Я бы сделал вот так... В настройках блока который вам мешает прописать следующее:


<?php
$match 
TRUE;
$types = array('story' => 1'page' => 1);
if (
arg(0) == 'node' && is_numeric(arg(1))) {
  
$nid arg(1);
  
$node node_load(array('nid' => $nid));
  
$type $node->type;
  if (isset(
$types[$type])) {
    
$match FALSE;
  }
}
return 
$match;
?>

Данный код прописанный в условиях отображения блока, не показывает блок для типов документов story и page.

Аватар пользователя godson godson 13 мая 2010 в 18:08

Спасибо огромное, получилось. А скажите, как то же самое сделать для форума? Там не ноды, по аналогии не получилось Sad

Аватар пользователя plague plague 13 мая 2010 в 21:28

"godson" wrote:
Спасибо огромное, получилось. А скажите, как то же самое сделать для форума? Там не ноды, по аналогии не получилось :(

Как вы делали аналогию ?

Аватар пользователя plague plague 13 мая 2010 в 22:08

проверьте правильность написания


<?php
$match 
TRUE;
$types = array('story' => 1'forum' => 1);
if (
arg(0) == 'node' && is_numeric(arg(1))) {
  
$nid arg(1);
  
$node node_load(array('nid' => $nid));
  
$type $node->type;
  if (isset(
$types[$type])) {
    
$match FALSE;
  }
}
return 
$match;
?>

Должно работать, проверять у меня честно говоря нет времени... если не заработает ищите ответ дальше... или внимательнее пишите.

Аватар пользователя Geldora Geldora 13 мая 2010 в 23:42

"Geldora" wrote:
context

это модуль, но его нужно предварительно скачать с оф.сайта (не говоря уже, о настройке...)

П.С. сама не пробовала Smile но очень хочу после видеоурока с mustardseed.com

Аватар пользователя Айдар Айдар 24 мая 2011 в 23:09

Спасибо за ценный код!
А что нужно прописать для того, чтобы, наоборот, блок выводился только на определенных типах материала (а не исключался из других)? А то как-то раздражает видеть его в админке.
Спасибо еще раз!