Создаём entity в Друпал 7 (часть 5: добавляем поля)

Опубликовано: 17.06.2017

видео Создаём entity в Друпал 7 (часть 5: добавляем поля)

Form API в Drupal 7 урок 1 (вступление)

Чтобы добавить поддержку дополнительных полей к созданной нами ранее сущности, потребуется несколько изменений.



Для административного интерфейса управления полями нужен какой-либо приличный родительский пункт меню. Хорошо, когда у нас есть типы сущности: таким родительским пунктом будет страница настройки типа. А если нет? Текущий вариант сообщений не имеет никаких страниц настроек чего бы то ни было и «цеплять» настройки полей не к чему. Придется создать...

Drupal 7: multilanguage content, multi languages inside a site, translation

Добавим отдельный пункт меню для страницы настроек (не знаю, какие настройки могут быть у нашего примера, но в реальных условиях для реальных модулей какие-нибудь да есть...).

Для начала — константу с путем к этой странице:

// smessage.module   // Путь к странице настроек модуля. define ( 'SMESSAGE_ADMIN_PATH' , 'admin/structure/smessage' ) ;

Затем — пункт меню:


How to create a custom module in Drupal 7 and using hook_menu

// smessage.module   /** * Implements hook_menu(). */ function smessage_menu ( ) { $items = array ( ) ;   $items [ SMESSAGE_ADMIN_PATH ] = array ( 'title' => SMESSAGE_ADMIN_LABEL, 'description' => 'smessage' , 'page callback' => 'drupal_get_form' , 'page arguments' => array ( 'smessage_settings_form' ) , 'access callback' => 'user_access' , 'access arguments' => array ( 'administer smessage' ) , 'file' => 'smessage.admin.inc' , ) ;   return $items ; }

Функция формы настроек будет в отдельном файле (люблю, знаете ли, код в отдельных файлах... :D) smessage.admin.inc в папке модуля. Возвращать она у меня будет пустую форму, поскольку мне никаких идей по поводу настроек в голову не идёт что-то...

rss