Получить имя поля ключа entity в Drupal 7

У меня эта задача возникла при работе с формами, где формы содержат поля ‘#entity’ и ‘#entity_type’. Нужно было найти универсальный способ прочитать ID объекта, т.к. для каждого объекта имя этого поля может отличаться (для node — nid, для file — fid и т.п.).

К нашей удаче, entity API содержит специальные методы, для получения названия primary key поля.

Применяя эти методы к значениям массива-описателя $form, которые передаются в callback функции form API, получим следующий шаблон кода:

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

node_save в hook_node_insert

Апрель 13, 2021 г.

Рассмотрим технику того, как выполнить node_save во время hook_node_insert. Проблема в том, что во время данного хука мы еще находимся в транзакции и выполнить сохранение ноды прямо тут коде функции - не получится. Т.е. следующий код работать не ...

Читать

Как получить текущий id node в drupal из кода программы?

Ноябрь 8, 2016 г.

Можно использовать анализ адреса хранимый Drupal в $_GET['q'] и/или анализ частей адреса, получаемых функцией arg(N). Оба варианта по сути делают одно и тоже - анализ внутреннего адреса, который для публикации имеет вид: node/%NID%. Я использую функцию ...

Читать

Изменения настроек поля программно Drupal 7

Май 27, 2020 г.

Если вам программно нужно изменить настройки поля в Drupal, то на помощь приходит Field CRUD API. Это набор функций из файла modules/field/field.crud.inc. ...

Читать

Использование cache API Drupal 7

Май 14, 2019 г.

Изучение API удобно начинать с шаблонов кода, которые демонстрируют технику использования. Пример логики использования/создания элемента кеша [crayon-6964c6630b242300553845/] Обратите внимание на дополнительные скобки вокруг $cache = cache_get($cache_id). ...

Читать
 

Комментарии к «Получить имя поля ключа entity в Drupal 7»

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



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