Подтвердить что ты не робот

Drupal: как получить список модулей

Как получить список модулей в Drupal, как в admin/build/modules?

4b9b3361

Ответ 1

Установите " Drush " (хороший вариант в любом случае, как только вы к нему привыкнете, он вам понравится). Он имеет встроенную команду для вывода списка всех установленных тем модулей.

Если вам нужно просмотреть список модулей, чтобы отобразить его в другом месте (это может быть проблемой безопасности!), Вы можете посмотреть, как это делает drush (pm.drush.inc:218).

Кроме того, есть основная функция, но я не знаю, хотите ли вы этого.

Ответ 2

Вы можете использовать команду drush pm-list --type=Module --status=enabled для получения списка установленных модулей.

Для получения дополнительных параметров, пожалуйста, ознакомьтесь с http://www.drupaltonight.com/drupal-articles/using-drush-get-list-enabled-modules

Ответ 4

Если вы хотите перечислить все доступные вам модули, это должно работать либо с Drupal 6, либо с Drupal 7:

<?php
// include_once('.' . base_path() . drupal_get_path('module', 'system') . '/system.admin.inc');
// Above line was intentionally commented out (see below).
$drupal_version = (int) VERSION;
$list_modules_function = '';
if ($drupal_version >= 7 && $drupal_version < 8) {
  $list_modules_function = 'system_rebuild_module_data';
}
else if ($drupal_version >= 6 && $drupal_version < 7) {
  $list_modules_function = 'module_rebuild_cache';
}
if (empty($list_modules_function)) {
  $output = t('Oops... Looks like you are not using either version 6 or version 7 of Drupal');
}
else if (!function_exists($list_modules_function)) {
  $output = t('Oops... Unable to find the function !function(). Try uncommenting the top line of this code.', array('!function' => $list_modules_function));
}
else {
  $output = "<dl>\n";
  $list_modules = $list_modules_function();
  foreach ($list_modules as $module) {
    $output .= "<dt>" . check_plain($module->info["name"]) . "</dt>\n";
    $output .= "<dd>" . check_plain($module->info["description"]) . "</dd>\n";
  }
  $output .= "</dl>\n";
}
print $output;
?>

Ответ 5

Вы также можете использовать следующие команды для поиска определенных модулей. Если вы хотите перечислить только модуль коммерции из списка модулей, чем

drush pml | grep commerce

На машине Windows вы не можете использовать grep. Таким образом, вы должны использовать findstr

drush pml | findstr commerce

Ответ 6

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

drush pm-list --type=Module --status=enabled