Views. Вывод поля кодом

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

Аватар пользователя digital_sword digital_sword 19 августа 2010 в 9:21

В views есть удобная галочка "Rewrite the output of this field", позволяющая темизировать вывод.
Если написать в это поле [title], то выведется заголовок. А что написать, чтобы этот заголовок выводился ссылкой на материал?

Комментарии

Аватар пользователя digital_sword digital_sword 19 августа 2010 в 9:48

Да, так работает. А можно вместо node/10 синоним выводить?
Такого поля-синонима материала нет, так что шаблоном не вытащишь. Пхп код в это поле можно как-то вставить? Ну чтобы функцией [ru-api=l]l[/ru-api] воспользоваться?

Аватар пользователя igorek igorek 19 августа 2010 в 10:09

"digital_sword" wrote:
Пхп код в это поле можно как-то вставить?

Да views_customfield
"digital_sword" wrote:
Ну чтобы функцией l воспользоваться?

Мне нравится так:

<?php
$link 
l('[title]'drupal_get_path_alias('node/[nid]'));
print 
$link;
?>
Аватар пользователя graker graker 19 августа 2010 в 10:19

igorek wrote:

Мне нравится так:

<?php
$link 
l('[title]'drupal_get_path_alias('node/[nid]'));
print 
$link;
?>


Хм. А зачем drupal_get_path_alias? l() сама умеет синонимы подставлять.

2 digital_sword: там ведь внизу есть еще одна удобная галочка - Link this field to it's node, нет?

Аватар пользователя digital_sword digital_sword 19 августа 2010 в 11:34

"igorek" wrote:
<?php
$link = l('[title]', drupal_get_path_alias('node/[nid]'));
print $link;
?>

Так он и выводит [title] как [title] а [nid] как [nid]. Не работает. Как правильно заполнить?

"graker" wrote:
2 digital_sword: там ведь внизу есть еще одна удобная галочка - Link this field to it's node, нет?

Если вставлять шаблон как [title] в поле для картинки, картинка выведется ссылкой, титл нет.

Аватар пользователя inquis@drupal.org inquis@drupal.org 19 августа 2010 в 12:35

А шаблоны views, которые доступны по нажатию кнопочки Theme information - не стандартный функционал?

Вместо title вывести nid, по указанной выше кнопочке выбрать шаблон для этого поля. После чего в шаблоне вызвать node_load и применить указанный выше код формирования ссылки через l();
Это не готовое решение, а только направление в нужное русло "куда копать".

Аватар пользователя digital_sword digital_sword 19 августа 2010 в 12:50

Просто кодом в views_customfield можно?
Не хочу я шаблон заводить, такая ситуация на каждом сайте, можно решить проблему 1 раз и не возиться с шаблонами

Аватар пользователя igorek igorek 22 августа 2010 в 12:19

"digital_sword" wrote:
Просто кодом в views_customfield можно?

"digital_sword" wrote:
Так он и выводит [title] как [title] а [nid] как [nid]. Не работает. Как правильно заполнить?

Добавляем поле: Материал заголовок и отмечаем галку - Исключить из вывода, если вывод нигде не нужен.
Добавляем поле: Customfield: PHP-код
внизу поля "значение" есть справочный текс: "$data: contains the retrieved record from the database (e.g. $data->nid).
$static: can be used to store reusable data per row."

<?php
$link 
l($data->node_titledrupal_get_path_alias('node/'.$data->nid));
print 
$link;
?>

Вообще можно посмотреть как и какие поля выводятся:

<?php
print_r
($data);
?>
Аватар пользователя volocuga@drupal.org volocuga@drupal.org 22 августа 2010 в 14:17

"digital_sword" wrote:
Если написать в это поле [title], то выведется заголовок. А что написать, чтобы этот заголовок выводился ссылкой на материал?

"digital_sword" wrote:
Если вставлять шаблон как [title] в поле для картинки, картинка выведется ссылкой, титл нет.

"digital_sword" wrote:
По-моему лучше освоить стандартный функционал views.

Непонятно, какая цель преследуется.

"graker" wrote:
там ведь внизу есть еще одна удобная галочка - Link this field to it's node

Ответ на вопрос

Аватар пользователя igorek igorek 23 августа 2010 в 16:53

"<a href="mailto:volocuga@drupal.org">volocuga@drupal.org</a>" wrote:
там ведь внизу есть еще одна удобная галочка - Link this field to it's node

да точно это очевидно

Аватар пользователя smk9001 smk9001 24 сентября 2010 в 10:40

сделал вид, поставил галочку "выводить это поле в виде ссылке" в котором написал следующие
[title]
в итоге получаются не рабочие ссылки. в формате /?q=%D0% и тд
может есть какой другой способ или я не так делаю...
зарание спасибо

Аватар пользователя smk9001 smk9001 24 сентября 2010 в 10:42

сделал вид, поставил галочку "выводить это поле в виде ссылке" в котором написал следующие
<a href="/node/[nid]">[title]</a>>
в итоге получаются не рабочие ссылки. в формате /?q=%D0% и тд
может есть какой другой способ или я не так делаю...
зарание спасибо

Аватар пользователя skapun skapun 18 февраля 2011 в 14:09

Народ, а кто-нибудь пользовался - $static:
$static: can be used to store reusable data per row.

Как ее можно между вьюхами передавать?

Аватар пользователя skapun skapun 18 февраля 2011 в 14:09

Народ, а кто-нибудь пользовался - $static:
$static: can be used to store reusable data per row.

Как ее можно между вьюхами передавать?

Аватар пользователя Madved Madved 21 февраля 2011 в 6:53

Помогите пожалуйста!!!!! В строке Pattern for the title нужно прописть код что бы место титле выводился другой нод из этой таблицы!Какой???