Есть замечательный модуль для Drupal - Flag. Он позволяет добавлять неограниченное количество гибконастраиваемых флагов для материалов, с помощью которых пользователь пожет помечать нужные ему материалы. Это удобно, если, например, Вы хотите сделать на сайте интернет магазина Избранное, или например сравнение товаров. С помощью модуля Flag, можно добавить ссылку ко всем товарам, и потом, с помощью Views вывести все помеченные пользователем товары для, например, сравнения.
Но, у модуля есть один минус. Если нужно добавить например ссылку "Добавить в избранное" к каждому товару, выводимому в сетке с помощью views, то стандартными средствами модуля Flag это сделать не получится. Поэтому предлагаю решение, которое я нашёл в сети.
Инструкция по выводу ссылки Flag в Drupal Views:
- Установить модуль Views PHP и включить его.
- В представлении (view), где нужно выводить ссылку, добавить поле: Содержимое: Nid, и в его настройках установить опцию Исключить из вывода/Exclude from display, чтобы отобразить его как скрытое.
- Поле Содержимое: Nid должно быть самым первым в списке выводимых полей. Это важно.
Теперь необходимо добавить еще одно поле Глобальный: PHP/Global: PHP field и в поле Output code добавить следующий php код (вводить с php тегами <?php ?>):
<?php print flag_create_link("машинное_имя_вашего_флага", $row->nid); ?>
Здесь, вместо машинное_имя_вашего_флага, нужно ввести машинное имя нужного флага. У меня, например, это favorites:
Всё, дальше ножно сохранить вьюшку и ссылка должна отображаться и работать.