взгляды друпалов блокируют аргументы - PullRequest
0 голосов
/ 20 апреля 2010

В настоящее время у меня есть представление (Drupal 6 с использованием Views2), которое правильно объединяет пользовательский тип контента (видео) и фильтрует их для отображения страницы. Когда я создаю отображение блока, он отлично просматривает результаты в реальном времени, но когда я перехожу на страницу, ожидающую увидеть блок, он не появляется.

Я вполне уверен, что аргумент, который я пытаюсь передать, терпит неудачу, потому что, когда я выбираю «Показать все результаты» для «Действие, которое нужно выполнить, если аргумент не проверяется:» блок прекрасно отображается на странице.

Любой совет определенно приветствуется.

Ответы [ 2 ]

2 голосов
/ 02 июня 2010

вы можете использовать PHP-код в разделе «предоставить аргумент по умолчанию». предполагая, что вы используете обратный вызов меню, чтобы применить аргумент, вы можете сделать это:

<?php

if(args(0) == 'your-menu-path' && args(1) != ''){
    return args(1)
}

?>

убедитесь, что вы передаете аргумент по умолчанию для views-embed-view (), если используете его для размещения представления на своей странице, в противном случае он вообще не будет отображаться.

0 голосов
/ 01 марта 2013

В Drupal 7, чтобы выяснить, на каком узле вы находитесь, следуйте ответу corneliusk о том, чтобы сделать его параметром по умолчанию. Однако НЕ включайте теги php, и это просто «arg», а не «args» для d7. Пример:

if(arg(0) == 'node' && arg(1) != ''){
    return arg(1);
}
else {
  return "";
}
...