Drupal获取模块信息?

问题描述 投票:9回答:3

get_module_info('MODULE_NAME')这样的Drupal中是否有任何功能,或者我应该解析info文件?

drupal drupal-6
3个回答
15
投票

drupal_parse_info_file()是最接近的函数,但它需要文件路径,而不是模块名称,因此您必须先将名称转换为路径:

$path = drupal_get_path('module', $name) . '/' . $name . '.info';
$info = drupal_parse_info_file($path);

7
投票

一个更简单的方法(drupal 7及以上)是使用system_get_info函数。


5
投票

如果您碰巧使用Features模块,它创建了一个可靠的结构,用于与System表进行交互,可以很容易地适应任何模块信息收集。

要获取有关模块的信息,请使用features_get_modules($module_name)。这将在features.module的第475行向features_get_info()发送特定于模块的请求。

信息被缓存,您可以使用hook_system_info_alter()来修改所需的值。请注意,Drupal核心中的任何内容都不会触及此功能,并且仅对您自己的自定义模块功能有用。

© www.soinside.com 2019 - 2024. All rights reserved.