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

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

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

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

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

Удаление nodequeue программно

Май 28, 2021 г.

Небольшой сниппет (snippet) по удалению сущностей nodequeue из кода. Может быть полезно при миграции данных. Удобно оперировать с машинным именем нод-кью, но функция удаления требует ID, потому код обычно обретает следующие формы: [crayon-6a677e9073bf7990819350/] ...

Читать

Работа со схемой данных в Drupal

Январь 17, 2019 г.

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

Читать

Вывод меню с фиксированной глубиной в Drupal

Март 25, 2019 г.

Блок меню core модуля menu позволяет вывести всю иерархию меню полностью, но иногда требуется показать только 1-2 верхних уровня. Посмотрим как организовать такой вывод. Drupal в модуле menu использует функцию menu_tree('ИМЯ МЕНЮ'), чтобы рендерить ...

Читать

Формирование одиночного чекбокса в Drupal 7 Webform

Ноябрь 23, 2025 г.

В Webform для Drupal 7 нет отдельного типа элемента, который отвечал бы за одиночный чекбокс. Если возникает задача добавить в форму знакомую всем галочку ...

Читать
 

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

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



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