Персональная страница shra, блог фриленсера, веб-разработчика на PHP. Здесь я делюсь своим опытом и мыслями, провожу опыты над людьми, собираю нематериальные свидетельства собственной глупости. Используя примеры программного кода с данного сайта, вы принимаете всю ответственность за возможные последствия их использования, включая ваше психическое здоровье и интересы третьих лиц.
Если вам программно нужно изменить настройки поля в Drupal, то на помощь приходит Field CRUD API. Это набор функций из файла modules/field/field.crud.inc.
А далее я покажу типовой пример кода, который можно использовать для вашего случая как шаблон. Задача изменения поля обычно реализуется через написание hook_update вашего модуля, т.к. настройки типично меняются один раз при выполнении процедуры ‘run updates’ (/update.php).
Настройки представляют собой сложный ассоциативный массив, пример можете посмотреть ниже. Некоторые параметры, например длина поля, не достаточно изменить в настройках, чтобы они применились к структуре базы данных. Может потребоваться выполнить ряд запросов непосредственно на языке sql.
Изучение API удобно начинать с шаблонов кода, которые демонстрируют технику использования.
Пример логики использования/создания элемента кеша
[crayon-6a3798a303e28928869493/]
Обратите внимание на дополнительные скобки вокруг $cache = cache_get($cache_id). ...
При обновлении модуля s3fs с ветки 7.x-2.x -> 7.x->3.x друпалу не удаётся найти указанный класс. Все необходимые шаги по апгрейду сделаны, как описано в readme.txt модуля.
Это проблема инициализации библиотеки awssdk в s3fs_libraries_info(). Drupal ...
Можно использовать анализ адреса хранимый Drupal в $_GET['q'] и/или анализ частей адреса, получаемых функцией arg(N).
Оба варианта по сути делают одно и тоже - анализ внутреннего адреса, который для публикации имеет вид: node/%NID%.
Я использую функцию ...
Друпал не позволяет менять длину текстового поля после создания. Функция field_update_field также нам не поможет - будет сгенерирована соответствующая ошибка, что поле уже содержит данные и изменить его длину нельзя.
Это можно проделать вручную, зная ...