Drupal получить информацию о модуле? - PullRequest
9 голосов
/ 01 октября 2010

Есть ли какая-либо функция в Drupal, такая как get_module_info('MODULE_NAME'), или я должен проанализировать info файл?

Ответы [ 3 ]

15 голосов
/ 01 октября 2010

drupal_parse_info_file() является ближайшей функцией, но она принимает путь к файлу, а не имя модуля, поэтому сначала нужно преобразовать имя в путь:

$path = drupal_get_path('module', $name) . '/' . $name . '.info';
$info = drupal_parse_info_file($path);
7 голосов
/ 15 декабря 2011

Несколько более простой метод (drupal 7 и выше) - использовать функцию system_get_info .

5 голосов
/ 01 октября 2010

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

Для получения информациио модуле используйте features_get_modules($module_name).Это отправляет специфичный для модуля запрос на features_get_info() в строке 475. features.module.

Информация кэшируется, и вы можете использовать hook_system_info_alter () для изменения необходимых вам значений.Обратите внимание, что эта функциональность не затрагивается ничем в ядре Drupal и полезна только для вашей собственной функциональности модуля.

...