[Решено] Nid в field--field_name.tpl.php

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

Аватар пользователя Айдар Айдар 7 ноября 2011 в 15:40

Как подставить id ноды в шаблон поля в D7:

создал файл field--field_email_address.tpl.php, в нем прямиком необходимо вывести значение одного поля ссылкой: <a href="/email/node/nid/field_email_address">...</a>

Вот не знаю, какую переменную прописать для подстановки ID ноды в ссылку - в костылях таких допустимых переменных нету; вроде вычитал, что preprocess в template.php нужно добавить, но не пойму, может проще есть способ?

И, если нет способа, не подскажете, как лучше сделать?

Комментарии

Аватар пользователя SergO SergO 7 ноября 2011 в 17:07

На здоровье. Там, вообще-то все переменные прямо в шаблоне описаны)) (Шёпотом: "который лежит по адресу \modules\field\theme\field.tpl.php").

Аватар пользователя Айдар Айдар 7 ноября 2011 в 17:28

Я оттуда и копировал шаблон, когда переименовывал, но, видимо, не заметил там ничего такого.

Теперь ошибки повалили:

Warning: Missing argument 3 for email_mail_page_form() в функции email_mail_page_form() (строка 274 в файле /modules/email/email.module).
Warning: Missing argument 4 for email_mail_page_form() в функции email_mail_page_form() (строка 274 в файле /modules/email/email.module)
и т.д.

В шаблоне нельзя прямой ссылкой писать или он еще каких то объектов требует?

Итоговая ссылка у меня выглядит таким образом:           <a class="colorbox-load" href="/colorbox/form/email_mail_page_form?destination=/email/node/<?php print $element['#object']->nid; ?>/field_email_address&width=700&height=350">Связаться с компанией по e-mail</a>

Соответственно, этим шаблоном я переписываю стандартную ссылку, выдаваемую модулем email.

Или может прямо в модуле проще ее переписать, не поможете с этим?