Доброго времени суток!
встала проблема чтобы в блоке выводилось портфолио через аргумент и соответственно в заголовке блока менялось название
попользовался поиском и состряпал такую конструкцию
в аргументах выбрал: Таксономия: Term
заголовок: Работы раздела "%1"
Default argument type: PHP Code
if ( arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
$terms = taxonomy_node_get_terms_by_vocabulary($node, 1);
return key($terms);
}
валидация по термину таксономии, тип аргумента - term name or synonym
и не работает. уже четвертый час бьюсь
буду рад помощи. заранее спасибо
Комментарии
А зачем PHP? Что у вас за задача такая, что обычного функционала Views не хватает?
разве в views тип отображения блок работает напрямую с урл?
другую систему применил
if ( arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
$term = taxonomy_get_term_by_name($name);
return($term);
}
в превью все отлично работает. на странице с блоком нет...
попробовал сделать через Provide default argument: Taxonomy Term ID from URL
результат тоже отрицательный
Проверьте, а добавлен ли вообще блок на страницу.
Поставьте else return , проверьте вызывается ли вообще код.
вызывается
решил другим способом пойти
в шаблон страницы вставил следующий код
<?php
if ( arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
$terms = taxonomy_get_term_by_name($name);
return($term);
$view = views_get_view('menu');
print $view->execute_display('default', $term);
}
?>
выдает Array и все
Что-то я не пойму ничего в вашем последнем коде:
1. Откуда берется $name
2. Зачем вам return посередине
Если ошибки в коде - исправляйте, если при копипасте - дайте полный код.
решил обойтись с помощью модуля viewfield
спасибо за помощь
на досуге попробую все таки разобраться с аргументами в блоках
Напишите пож если можно, как настроить аргументы в блоке по термину таксономии для последнего ВЬЮСА! Там все сильно отличается!