У меня есть ответ на свой вопрос.Однако, возможно, есть лучшие ответы ... Я могу только надеяться.
Создан блок контента (Личные события)
Добавлен этот код в тело блока.Этот код передает аргумент id узла в представление
<?php
if ( arg(0) == 'node' && is_numeric(arg(1)) && ! arg(2) ) {
$node = node_load(arg(1));
$args = array($node->nid );
$view = views_get_view('PersonalEvents');
print $view->preview('default', $args);
}
?>
Добавил этот код в страницы блока [выбрав: Показать, показывает ли следующий код PHP значение TRUE (режим PHP, только для экспертов)]... это заставляет блок отображать только личный контент.
<?php
//Read URL
$path=$_GET['q'];
//If URL is node page
if ( strpos($path,'node')===0){
//Parse URL to get nid
$links=explode("/",$_GET['q']);
$nid=$links[1];
//Load node
$node=node_load($nid);
//Display block only if node is of certain content type
if($node->type=='person'){
return TRUE;
}
}
return FALSE;
?>
Затем создается представление с:
Стиль: таблица
Содержание отношений: Участники (field_attendees);требует этого отношения (проверено);и Delta установлена на ALL.
Аргумент: Узел: Nid;Отношения: участники;Скрыть вид / Страница не найдена (404) [выбрано]
Поля ... просто выбран Название узла и дата (на данный момент)
Фильтр: Тип узла = Событие
У кого-нибудь есть способ получше?