EDark 28 июля 2012 в 14:37 подскажите как правильно прописать если выбрано если PHP код возращает TRUE пытаюсь что-то вроде этого <?php if (arg(0) == 'article') {} ?> но не работает Drupal6 Блог Войдите или зарегистрируйтесь, чтобы отправлять комментарии
EDark 28 июля 2012 в 14:46 хотя стоп, отображается только на странице article... а нужно чтобы и внутри статей во всем модуле article короче
EDark 28 июля 2012 в 14:56 а я так щас и пытался.. но уменя есть категории... вот и думаю как теперь категория1 категория2 ... попробовал их спрятать в категорию только теперь в блоке с категориями показывается только эта категория... не знаю как вывести подкатегории в блоке... вообще недавно с друпалом..
EDark 28 июля 2012 в 15:01 нажал разворачивать пункты в настройках таксономии получилось так заголовок Категории Категории -кат1 -кат2 но вот ссылка Категории как бы не нужна да и почему-то пустая она... как быть то?
graker 28 июля 2012 в 15:02 EDark wrote: как быть то? Для начала - не мешать в кучу все подряд вопросы. Ну и поиском воспользоваться не повредит.
EDark 28 июля 2012 в 15:05 тык пользуюсь) проблема одна статьи подразделены категориями категория1 категория2 и поэтому в этих категориях блок не отображается... получается ссылка вида сайт.ру/категория1 и тд не прописывать же все категории в отображения блока?
graker 28 июля 2012 в 15:09 Наверно, можно воспользоваться настройкой Show block for specific content types
graker 28 июля 2012 в 15:20 А, да, в шестерке же нету этой настройки. EDark wrote: if($node->type=='article'){ return TRUE; } так не пашет... Наверно надо сначала ноду загрузить, прежде чем тип проверять.
EDark 28 июля 2012 в 15:35 <?php $node = node_load(); if ($node->type == 'article'){ return TRUE; } ?> тоже не пашет
EDark 28 июля 2012 в 15:47 хм по типу не лучше получается... короче не знаю как сделать... в категориях тип получается другой чтоли.. как его узнать?
EDark 28 июля 2012 в 15:49 да я уже нашел <?php $nodeType = "article"; // valid node id in view mode if ( arg(0) == 'node' AND is_numeric(arg(1)) AND arg(2) == FALSE ) { $node = node_load(arg(1)); // cached if ($node->type == $nodeType) { return true; } } return FALSE; ?> вот это показывает только в самих статьях, я и не подумал... зачем мучился..
EDark 28 июля 2012 в 15:51 может как то можно привязать к словарю? admin/content/taxonomy/edit/vocabulary/3
graker 28 июля 2012 в 15:52 Точно так же: грузишь ноду, грузишь ее термины таксономии, проверяешь id словаря.
EDark 28 июля 2012 в 16:03 нашел <?php if ( arg(0) == 'taxonomy' && is_numeric( arg(2) ) && taxonomy_get_term( arg(2) )->vid == 5) // 5 надо заменить на id словаря, для которого должен выводится блок // словарь != термин return true; return false; ?>
EDark 28 июля 2012 в 16:08 сделал так <?php $node = node_load(arg(1)); if ($node->type == 'article') {return TRUE;} elseif (arg(0) == 'article') {return TRUE;} elseif ( arg(0) == 'taxonomy' && is_numeric( arg(2) ) && taxonomy_get_term( arg(2) )->vid == 3) // 5 надо заменить на id словаря, для которого должен выводится блок // словарь != термин return true; return false; ?> а при пагинации будет показываться блок то? или arg(0) == 'article' достаточно?
EDark 28 июля 2012 в 16:30 graker, спасибо тогда проблема решена блок выводится на странице article и пагинации выводится в статье выводится в словаре 3 и пагинации
Комментарии
return TRUE;
пардон
хотя стоп, отображается только на странице article... а нужно чтобы и внутри статей во всем модуле article короче
А в настройках видимости блока прописать article/* - не проще?
а я так щас и пытался.. но уменя есть категории...
вот и думаю как теперь
категория1
категория2
...
попробовал их спрятать в категорию
только теперь в блоке с категориями показывается только эта категория...
не знаю как вывести подкатегории в блоке...
вообще недавно с друпалом..
нажал разворачивать пункты в настройках таксономии
получилось так
заголовок Категории
Категории
-кат1
-кат2
но вот ссылка Категории как бы не нужна да и почему-то пустая она...
как быть то?
Для начала - не мешать в кучу все подряд вопросы.
Ну и поиском воспользоваться не повредит.
тык пользуюсь)
проблема одна
статьи подразделены категориями
категория1
категория2
и поэтому в этих категориях блок не отображается... получается ссылка вида сайт.ру/категория1
и тд
не прописывать же все категории в отображения блока?
Наверно, можно воспользоваться настройкой Show block for specific content types
if($node->type=='article'){
return TRUE;
}
так не пашет...
А, да, в шестерке же нету этой настройки.
Наверно надо сначала ноду загрузить, прежде чем тип проверять.
<?php
$node = node_load();
if ($node->type == 'article'){
return TRUE;
}
?>
тоже не пашет
Читай описание node_load. Подсказка: у этой функции есть аргументы.
хм по типу не лучше получается...
короче не знаю как сделать...
в категориях тип получается другой чтоли.. как его узнать?
да я уже нашел
<?php
$nodeType = "article";
// valid node id in view mode
if ( arg(0) == 'node' AND is_numeric(arg(1)) AND arg(2) == FALSE ) {
$node = node_load(arg(1)); // cached
if ($node->type == $nodeType) {
return true;
}
}
return FALSE;
?>
вот это показывает только в самих статьях, я и не подумал... зачем мучился..
может как то можно привязать к словарю?
admin/content/taxonomy/edit/vocabulary/3
Точно так же: грузишь ноду, грузишь ее термины таксономии, проверяешь id словаря.
вот это точно сам сообразить не смогу...
нашел
<?php
if ( arg(0) == 'taxonomy'
&& is_numeric( arg(2) )
&& taxonomy_get_term( arg(2) )->vid == 5)
// 5 надо заменить на id словаря, для которого должен выводится блок
// словарь != термин
return true;
return false;
?>
сделал так
<?php
$node = node_load(arg(1));
if ($node->type == 'article') {return TRUE;}
elseif (arg(0) == 'article') {return TRUE;}
elseif ( arg(0) == 'taxonomy'
&& is_numeric( arg(2) )
&& taxonomy_get_term( arg(2) )->vid == 3)
// 5 надо заменить на id словаря, для которого должен выводится блок
// словарь != термин
return true;
return false;
?>
а при пагинации будет показываться блок то?
или arg(0) == 'article' достаточно?
Будет, да.
graker, спасибо
тогда проблема решена
блок выводится на странице article и пагинации
выводится в статье
выводится в словаре 3 и пагинации