Персональная страница shra, блог фриленсера, веб-разработчика на PHP. Здесь я делюсь своим опытом и мыслями, провожу опыты над людьми, собираю нематериальные свидетельства собственной глупости. Используя примеры программного кода с данного сайта, вы принимаете всю ответственность за возможные последствия их использования, включая ваше психическое здоровье и интересы третьих лиц.
Если вам программно нужно изменить настройки поля в Drupal, то на помощь приходит Field CRUD API. Это набор функций из файла modules/field/field.crud.inc.
А далее я покажу типовой пример кода, который можно использовать для вашего случая как шаблон. Задача изменения поля обычно реализуется через написание hook_update вашего модуля, т.к. настройки типично меняются один раз при выполнении процедуры ‘run updates’ (/update.php).
Настройки представляют собой сложный ассоциативный массив, пример можете посмотреть ниже. Некоторые параметры, например длина поля, не достаточно изменить в настройках, чтобы они применились к структуре базы данных. Может потребоваться выполнить ряд запросов непосредственно на языке sql.
Я уже рассказывал ранее как программно можно обновить данные в сущности config_pages. А здесь покажу как программно можно выполнить удаление полей и групп (созданных модулем field_group).
Config Pages использует Field API, поэтому удаление полей ...
Drupal views позволяют сконфигурировать сообщение на случай если результат запроса пуст и нельзя срендерить какой либо контент для данного представления.
Данная опция находится во вкладке 'advanced' вашего представления. Но в данной статье я покажу ...
Обычно такой код требуется писать в файлах .install, для модификации структуры ваших полей при обновлении модуля, чтобы не проделывать эту операцию вручную. Также предварительно стоит подумать о переносе данных из удаляемого поля в какое то новое место. ...
Модуль field_collection всю свою историю существования (аж 2010 года) проходит в статусе beta версии. Тем не менее многие разработчики используют его в своих проектах. На текущий момент это версия 7.x-1.0-beta13.
Хотя FC - это ещё один entity, ...