Всем привет!
Подскажите пожалуйста, как указать термин таксономии блоку views. Мне нужно, чтобы в блоке отображались превью материалов с материалом таксономии, в которой мы находимся. URL адрес выглядит следующим образом /category/Видеоархив/{выбранный термин}. Как я понял, мне нужно передать в блок аргумент {выбранная категория} с помощью URL, чтоб потом по нему указать нужный термин.
Как можно передать этот аргумент блоку? Или я пошёл не правильным путём?
Комментарии
http://www.drupal.ru/node/88500
третий комент
Спасибо, sg85! Сейчас попробую разобраться с этим
Можно поподробней как теперь этот аргумент подсунуть вьюхе в блоке?
Если тоже самое перевести на русский(примерно) - Жмете на аргумент -> Ищете "Если аргумента нет..." -> "Брать аргумент по умолчанию" -> дальше думаю разберетесь
Именно так я и сделал, но это не помогло. Когда я пишу {выбранная категория} в аргументах предварительного просмотра всё ок, а на сайте не работает. Может быть, нужно где то ещё указать на arg(2) или дело в чём-то другом?
В вашем случае надо было Выбрать ID термина.
Попробовал, теперь не работает даже в предварительном просмотре. Мне кажется, что вместо нужного аргумента бралось что-то другое или arg(2) встречается где-то ещё
Возможно, мне стоит спросить, что указать в фильтрах? Сейчас там Материал: Тип = Видеоархив
Таксономия: Словарь = Видеоархив. Может быть, нужно как нибудь указать на arg(2)в фильтрах?
не надо.
Вообще странно, у меня все работает, одна вьюха taxonomy/term/% другая сидит в блоке на том же пути и берется именно ID термина.
q2_faith, спасибо, а то я реально думал, что ошибка в этом.
Когда я пытаюсь добавить в адрес своей страницы % у меня просто исчезает ссылка на неё из меню. Вбивал в ручную, всё как прежде: блок пустой.
Сейчас в пути написано Видеоархив, весь остальной путь сделан ЧПУ.
причем здесь блок и меню?
Не причём, это я действительно лишнее написал...
Под "путем блока" обычно подразумевается область видимости блока, ибо по умолчанию он будет отображаться вообще везде
если используется аргумент, то не обязательно это делать)
Т.е. если аргумент не подходит по типу, то блок скроется?(хотя для PHP мне кажется, все равно придется скрыть)
если при отсутствии результата не выводится какая то инфа, то не надо определять видимость дополнительно
В настройках аргументов есть ещё пункт "заголовок" и "хлебные крошки", может там что-о надо написать?
Спасибо sg85 и q2_faith за помощь!
Проблема решена следующим образом:выбираем в аргументах "таксономия: ID термина"->"подставить аргумент по умолчанию"->"РНР код". Код:
$url = implode ('/', arg());
return arg(2);
Прочитать про arg можно тут
<?phpif ((arg(0) == 'taxonomy') && (arg(1) == 'term')) {
$myterm = arg(2);
return $myterm;
}?>
должно работать. если не будет работать, то посмотрите что возвращает. так как вы делаете, слегка не правильно)