Drupal flag модуль — некоторые элементы API

Очередная шпаргалка по Drupal, рассматриваем функции API модуля flag, для вызова их из кода программы PHP.

Вы можете найти много материалов, посвященных настройке плагина flag, работе с ним из админки, но совсем мало — описанию функций API.

Примеры кода даны для Drupal 7, версия плагина Flag 3.7, версия API — 3.

Получить флаги установленные пользователем

Ищем флаги конкретного пользователя, для конкретного объекта или группы объектов.

Пример выбора флагов для конкретной публикации, установленных текущим пользователем:

Если пользователь не авторизирован, то drupal различает их по коду сессии, т.е. разные анонимы могут выставлять свои флаги.

Вывод флага в шаблон

Так как вывод флага сопряжен с учетом разных нюансов (сменой его статуса, проверками прав и т.п.), то рендерить вручную флаги довольно тяжко. Для этой цели в API есть функция:

Указывать тип сущности не требуется, т.к. флаг привязывается к конкретному типу, достаточно указать только entity_id.

Установить/сбросить флаг

Если логика вашей программы требует установить или сбросить флаг, то воспользуйтесь функцией:

Параметр $action может принимать два значения — ‘flag’ или ‘unflag’. Если учетка (account) не указана, то будет использован текущий пользователь.

Устанавливаем некий флаг «marker» от лица текущего пользователя:

и сбрасываем этот флаг:

Мало букафф? Читайте есчо !

Функция для локализации изображения при экспорте статьи

Февраль 29, 2016 г.

За многолетнюю практику работы с Drupal, я накопил целую библиотеку вспомогательных функций. Функция, описываемая в этой статье, используется для копирования ...

Читать

Используем токены для доступа к полям параграфов в Drupal

Май 2, 2024 г.

Пара примеров о том, как вытащить нужную инфу из параграфов, используя токены. Обычно это нужно для генерации meta заголовков страницы. У вас есть node, в которой вы создали поле field_myfield с entity_reference: paragrpahs. Самое простое, ...

Читать

Синхронизация публикаций на связанных сайтах в Drupal

Июнь 2, 2010 г.

Краткая предыстория. Задача в общем виде ставилась так: есть каталог продукции на неком головном сайте и ряд шаблонных статей,  которые (и те и другие) являются материалом для наполнения сайтов-сателлитов. На этапе развертывания сайта-сателлита (спутника) ...

Читать

Еще один пример работы с EntityFieldQuery

Декабрь 23, 2020 г.

Время от времени продолжаю кодить под drupal 7, публикую еще один пример для работы EntityFieldQuery, на этот раз с фильтром по полю типа term reference. Основная логика точно такая же как и при работе с data полями (где у нас хранятся тексты или ...

Читать
 

Комментарии к «Drupal flag модуль — некоторые элементы API»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: