добавление ссылки к содержимому поля CCK при выводе Views

Главные вкладки

Аватар пользователя beerman beerman 18 июля 2008 в 11:18

Если я определил нужную роль пользователя, в template.php я пытаюсь добавить к содержимому поля $data->my_field ссылку для редактирования этого материала, но получаю просто текст вместе со сформированной мною ссылкой вида:

Текст описания<a href="/content/nv-400-shadow/edit?destination=motoutil">edit</a>

Присваиваю так:
<?php
$linkedit = "nid) . "/edit?destination=motoutil\">edit";
$data->node_data_field_accdesc_field_accdesc_value = $data->node_data_field_accdesc_field_accdesc_value . $linkedit;
?>

Пробовал так:
<?php
$linkedit = l('edit', 'node/' . $data->nid . '/edit?destination=motoutil');
$data->node_data_field_accdesc_field_accdesc_value = $data->node_data_field_accdesc_field_accdesc_value . $linkedit;
?>
Получилось вот так:
Текст описания<a href="/node/9/edit%3Fdestination%3Dmotoutil">edit</a>

Ж@п@й чую, что гребу не там. Как заставить воспринимать

Комментарии

Аватар пользователя beerman beerman 18 июля 2008 в 12:58

получается
<?php
edit
?>
правильно будет так:
<?php
$linkedit = l('edit', 'node/' . $data->nid .'/edit',null,'destination=motoutil');
?>
но суть не в том. линк-то формируется, но он в теле переменной не является ссылкой, а является текстом.

Аватар пользователя beerman beerman 18 июля 2008 в 13:04

я тож сменил, но суть не поменялась. друпал ее не воспринимает

ЗЫ. к посту я прикрепил изображение того, что получается

Аватар пользователя gorr gorr 18 июля 2008 в 13:05

Если это в темплите вписано, то уже не пропускается ни через какие функции, раз сформировалось, должно так и выводиться.
Подробнее, куда вписываете?

Аватар пользователя beerman beerman 18 июля 2008 в 18:03

получилось

<?php
function phptemplate_views_view_table_motoutil($view, $nodes, $type) {
global $user;
$fields = _views_get_fields();
foreach ($nodes as $node) {
$row = array();
$linkedit='';
if ( array_search('manager',$user->roles) ){
$linkedit = '
'.l(t('Edit'), 'node/' . $node->nid .'/edit',null,'destination=motoutil');
}
foreach ($view->field as $field) {
if ($fields[$field['id']]['visible'] !== FALSE) {
$cell['data'] = views_theme_field('views_handle_field', $field['queryname'], $fields, $field, $node, $view);
if ($field['field'] == 'field_accdesc_value') { $cell['data'] = $cell['data'] . ' ' . $linkedit; }
$cell['class'] = "view-field ". views_css_safe('view-field-'. $field['queryname']);
$row[] = $cell;
}
}
$rows[] = $row;
}
return theme('table', $view->table_header, $rows);
}
?>

принимаются поправки