Как передать аргументы для страниц views?

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

Аватар пользователя aceton aceton 22 мая 2011 в 19:00

Доброе время суток!
Возникла проблема с передачей аргумента во views2.
Пытаюсь привязать некий тип документа (галерея)(site.ru/firm/gallery/1) к другому типу документа (организация)(site.ru/firm/about/1)
Выставляю: Views - Display(Page) - Path(site.ru/firm/gallery)
В аргументе пытался передать например

<?phpif (arg(0) == 'firm' && arg(2) != '') {
  return arg(2);
}?>

Так же пытался через "Arguments->Provide default argument->Node ID from URL"
Переходя по ссылке ../firm/gallery получаю неверную страницу.
Live preview при передаче аргумента показывает что все работает. Жесткая задача аргумента (Fixed entry) показывает что тоже все работает и даже страница по ссылке (site.ru/firm/gallery) открывается. А вот передача через код никак. Исходя из всего получается, что либо аргумент на страницу не передается, либо передается что-то не то.

Сделать похожее для display->block у меня получается. Там аргумент передается просто через "Arguments->Provide default argument->Node ID from URL".
А со страницей ну никак
Подскажите, как быть при передаче аргумента на страницу?
Может быть есть еще способы аттачить типы данных друг к другу?

С уважением!

Комментарии

Аватар пользователя aceton aceton 22 мая 2011 в 21:07

m.rad, спасибо но не то.
пока все, что в голову пришло, это, что код отрабатывается по уже открывшейся странице, у которой как раз "пункта '2'"(он же аргумент) нет.
поэтому под себя попробовал:

$args = arg(5,$_SERVER['HTTP_REFERER']);
return $args;

работает конечно, но это очень кривой вариант.
сейчас пытаюсь определить arg не по url, а по id текущей ноды/по ноде от которой зависит открываемая!

Отсюда вопрос,
$node->nid;
это для id данной ноды, а как будет для той, от которой она зависит?

$tt = $node->field_gallery_fromfirm[0]['nid'];
return $tt;

не работает