В КРИТЕРИИ ФИЛЬТРАЦИИ выбираю "Глобальный: PHP",
пишу туда:
global $user;
$account = user_load($user->uid);
$user_specialization = $account->field_specialization[LANGUAGE_NONE]['0']['tid'];
$account = user_load($user->uid);
$user_specialization = $account->field_specialization[LANGUAGE_NONE]['0']['tid'];
$node = node_load($data->nid);
$field_show_for = $node->field_show_for[LANGUAGE_NONE];
foreach($field_show_for as $term){
if($term['tid'] == $user_specialization){
dpm('Вывод '.$term['tid']);
return false;
}
}
if(!empty($field_show_for)){
return true;
}
Все работает, происходит кеширование и выводится только один вариант для всех пользователей.
Комментарии
выключите кеш для блоков и views
Кеш не включал, даже мемкеш выключил