Drupal получить информацию о модуле?
есть ли какая-либо функция в Drupal, как get_module_info('MODULE_NAME')
или я должен разобрать ?
3 ответов
drupal_parse_info_file()
является ближайшей функцией, но она принимает путь к файлу, а не имя модуля, поэтому сначала вы должны преобразовать имя в путь:
$path = drupal_get_path('module', $name) . '/' . $name . '.info';
$info = drupal_parse_info_file($path);
несколько более простой метод (drupal 7 и выше) - использовать system_get_info
Если вы используете особенности модуль, он создал прочную структуру для взаимодействия с системной таблицей, которая легко адаптируется для любого сбора информации о модуле.
чтобы получить информацию о модуле, используйте features_get_modules($module_name)
. Это отправляет запрос конкретного модуля в features_get_info()
в строке 475 функций.модуль.
информация кэшируется, и вы можете использовать hook_system_info_alter() для изменения необходимых вам значений. Обратите внимание, что это функциональность не затрагивается ничем в Drupal core и полезна только для вашей собственной функциональности пользовательского модуля.