2010-10-01 82 views
9

在Drupal中是否有像get_module_info('MODULE_NAME')或我应该解析info文件?Drupal获取模块信息?

+0

你想获得什么模块信息? – googletorp 2010-10-01 11:21:03

+0

我一直在开发一个模块,它对现有模块的信息进行分类,并根据信息文件返回信息。 – sultan 2010-10-01 11:26:51

+0

我觉得如果在这种类型的get_info('module OR theme','MODULE NAME or THEME NAME')上有任何实现,那将会很棒。 – sultan 2010-10-01 11:34:55

回答

15

drupal_parse_info_file是最接近的功能,但它需要一个文件路径,而不是一个模块名,所以你必须在名字第一次转换为路径:

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

这是我一直在寻找的东西!谢谢 ) – sultan 2010-10-02 03:55:33

5

如果你碰巧使用Features模块它创建了一个与System表交互的可靠结构,可以随时适应任何模块信息收集。

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

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