Здравствуйте.
В .tpl.php-файлах модуля news для получения значения определенного поля можно использовать такую конструкцию:
<?php $data = $row->{$field->field_alias}; ?>
Мне для грамотного дизайна необходимо объединить несколько переменных в один файл темы (чтобы views не на вставлял своих лишних спанов), я реализовал это путем создания 1 tpl.php-файла, в котором обрабатывается сразу несколько переменных. Пример:
<?php
$znick = $row->node_data_field_logo_field_nickname_value;
$zclass = $row->node_data_field_logo_field_class_value;
$zlvl = $row->node_data_field_logo_field_level_value;
$zcat = $row->node_data_field_logo_field_category_value;
if ($znick) { print 'Имя: ' . $znick . ', '; }
if ($zclass) { print 'Класс: ' . $zclass . ', '; }
if ($zlvl) { print 'Уровень: ' . $zlvl . ', '; }
if ($zcat) { print 'Категория: ' . $zcat . ', '; }
?>
Однако, данные получаемые из $row содержат немного не ту информацию, а именно информацию по ключу, который хранится в таблицу (то есть, например, в CCK было указано bad_boy|<span class="test">Плохой мальчик</span>
, соответственно в БД хранится ключ bad_boy, которому уже потом приписывается Плохой мальчик). У меня как раз при запросах через $row выводится всегда именно bad_boy — то есть не форматированный ключ в таблице.
Как можно добиться вывода форматированного текста (<span class="test">Плохой мальчик</span>
)?