Если вы просто хотите изменить отображаемое представление в зависимости от значения поля CCK, самый простой способ, который я нашел, - встроить представление в шаблон, используя views_embed_view()
.Что-то вроде этого в вашем файле шаблона будет работать, я думаю:
//Use the dsm function to print out your $node object
//to get the name of the field you want to pass as an arg
//like this: dsm($node);
//Assuming that the value of that field is in $node->cck_field['0']:
print views_embed_view('name_of_view', 'name_of_display', $node->cck_field['0'];
views_embed_view()
для работы нужен только первый аргумент - имя представленияОн вернет HTML для отображения по умолчанию именованного представления.Мы передаем это конкретное отображение в качестве второго аргумента.Все, что находится после второго аргумента, передается в представление в качестве аргумента, поэтому мы передаем значение поля в качестве аргумента для представления.См. эту ссылку для некоторой документации о том, как работает функция.