передача поля cck в качестве аргумента в представлениях - PullRequest
0 голосов
/ 19 апреля 2011

У меня есть тип контента с именем event, который имеет поле cck с именем event id. Идея состоит в том, что когда пользователь отправляет URL с этим идентификатором, отображается только информация, относящаяся к этому идентификатору события. На мой взгляд, я попытался создать блочное представление и передал идентификатор события в качестве аргумента, как только я это сделаю, результаты, которые ранее отображались в предварительном просмотре в реальном времени, исчезнут. Не совсем уверен, что я делаю неправильно, или если Я должен быть блок зрения. Это должен быть просмотр страницы? Пожалуйста, помогите.

1 Ответ

1 голос
/ 19 апреля 2011

Я считаю, что вы должны создать просмотр страницы, а не просмотр блока.Вы должны передать аргумент.Идентификатор события равен NodeID?Если да, то вы должны добавить Аргумент типа Node: NID и затем установить «Предоставить аргумент по умолчанию», равный «Node ID from URL».

Если EventId НЕ является NID, вам следует установить Аргумент по умолчанию на PHP и задать следующий PHP:

$path = drupal_get_path_alias($_GET["q"]); //get the URL alias
$path = explode("/", $path); //break path into an array
if ($path[0] == "events" && $path[1] != "")
{
  return $path[1];
}

Приведенный выше код будет принимать аргумент из URL (URL-адреса).должно быть похоже на www.example.com/events/14555

Причина, по которой я использую drupal_get_path_alias, заключается в том, что вы, возможно, включили модуль pathauto. Если нет, вы можете просто дать следующий php

if (arg(0) == ‘events’ && arg(1) != ”) return arg(1);
...