जवाबों:
आप drush pm-list --type=Module --status=enabled
सभी स्थापित मॉड्यूल की सूची प्राप्त करने के लिए कमांड का उपयोग कर सकते हैं ।
यदि आप मुख्य मॉड्यूल उपयोग को बाहर करना चाहते हैं drush pm-list --type=Module --no-core --status=enabled
मेरे द्वारा उपयोग किए जाने वाले दो विकल्प Drush और एक कस्टम स्क्रिप्ट हैं।
ड्रश के लिए, आप उपयोग कर सकते हैं drush pm-list
:
$ drush help pm-list
Show a list of available extensions (modules and themes).
Options:
--type Filter by extension type. Choices:
module, theme.
--status Filter by extension status. Choices:
enabled, disable and/or 'not
installed'. You can use multiple
comma separated values. (i.e.
--status="disabled,not installed").
--package Filter by project packages. You can
use multiple comma separated values.
(i.e. --package="Core -
required,Other").
--core Filter out extensions that are not
in drupal core.
--no-core Filter out extensions that are
provided by drupal core.
--pipe Returns a space delimited list of
the names of the resulting
extensions.
Aliases: pml
मैंने Drupal 6 के लिए भी यह स्क्रिप्ट लिखी है। आपको Drupal 7 के लिए बूटस्ट्रैप को संपादित करने की आवश्यकता है, और आप पाथ चेकिंग को ट्वीक भी करना चाह सकते हैं। मैंने इसे अपने DOCROOT में मॉड्यूल.php नामक एक फ़ाइल में डाला और इसे जंगली से बुलाया जाने से रोकने के लिए इसके चारों ओर पहुंच प्रतिबंध को जोड़ दिया।
<?php
include_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
header('Content-Type: text/plain');
$files = drupal_system_listing('/\.module$/', 'modules', 'name', 0);
system_get_files_database($files, 'module');
ksort($files);
$core_installed = array();
$core_enabled = array();
$core_disabled = array();
$contrib_installed = array();
$contrib_enabled = array();
$contrib_disabled = array();
foreach ($files as $info) {
$filename = $info->filename;
$name = $info->name;
$status = $info->status;
$contrib = strpos($filename, "sites/all/modules/") === 0;
if ($contrib) {
$contrib_installed[] = $name;
if ($status) $contrib_enabled[] = $name;
else $contrib_disabled[] = $name;
} else {
$core_installed[] = $name;
if ($status) $core_enabled[] = $name;
else $core_disabled[] = $name;
}
}
print "Installed Core Modules: " . join(", ", $core_installed) . "\n\n";
print "Enabled Core Modules: " . join(", ", $core_enabled) . "\n\n";
print "Disabled Core Modules: " . join(", ", $core_disabled) . "\n\n";
print "Installed Contrib Modules: " . join(", ", $contrib_installed) . "\n\n";
print "Enabled Contrib Modules: " . join(", ", $contrib_enabled) . "\n\n";
print "Disabled Contrib Modules: " . join(", ", $contrib_disabled) . "\n\n";
इस स्क्रिप्ट को ड्रश के साथ कहा जा सकता है: drush scr modules.php
सक्रिय मॉड्यूल (enabled_modules) मॉड्यूल एक वेबसाइट पर सभी सक्षम मॉड्यूल की सूची प्रदान करता है।
या,
आप सभी सक्षम मॉड्यूल प्राप्त करने के लिए इस API फ़ंक्शन मॉड्यूल_लिस्ट का उपयोग कर सकते हैं ।
हां, मॉड्यूल फ़िल्टर मॉड्यूल की जांच करें : यह उत्कृष्ट व्यवस्थापक सहायक है जो प्रबंध मॉड्यूल को बहुत आसान बनाता है।
मॉड्यूल सूची पेज काफी बड़ी साइट के साथ काम करते समय काफी बड़ा हो सकता है या यहां तक कि नए और विभिन्न मॉड्यूल के परीक्षण के लिए सिर्फ एक देव साइट का मतलब है। इस मॉड्यूल का लक्ष्य पूरा करने की क्षमता है कि आप जिस मॉड्यूल को खोज रहे हैं, उसे ब्राउज़रों की खोज सुविधा पर भरोसा किए बिना जल्दी से ढूंढने की क्षमता है, जो आपको 'आवश्यक द्वारा' या 'निर्भर करता है' वर्गों पर मॉड्यूल का नाम नहीं दिखाता है। विभिन्न मॉड्यूल या मेनू आइटम की तरह पृष्ठ पर कुछ अन्य स्थान।
जब मॉड्यूल मॉड्यूल फ़िल्टर सेटिंग पृष्ठ के माध्यम से टैब सक्षम किया जाता है, तो एक नया मॉड्यूल लेआउट थीम लागू किया जाता है। यह टैब लेआउट प्रत्येक पैकेज के लिए एक टैब और साथ ही एक टैब प्रदान करता है जो हर मॉड्यूल को वर्णानुक्रम में दिखाएगा। फ़िल्टर टेक्स्टफ़ील्ड प्रत्येक टैब पर उपलब्ध है लेकिन वर्तमान में स्वतः पूर्ण का समर्थन नहीं करता है।
ड्रश मेक में एक आदिम मेकफाइल पीढ़ी की क्षमता है। इसका उपयोग करने के लिए, बस अपनी निर्देशिका को Drupal संस्थापन में बदलें, जहाँ से आप फ़ाइल उत्पन्न करना चाहते हैं, और निम्नलिखित कमांड चलाएँ:
drush generate- makefile /path/to/make-file.make
आप मॉड्यूल की एक सूची के साथ make-file.make प्राप्त करते हैं। फिर आप इन मॉड्यूल को अन्य प्रोजेक्ट में लोड कर सकते हैं। Http://www.drush.org/en/master/make/#usage पढ़ें
यदि आपके पास ड्रश चलाने के लिए कमांडलाइन एक्सेस नहीं है, तो आप वेब यूआई से कुछ कर सकते हैं। सबसे अच्छा समाधान जो मुझे मिल सकता है वह था मॉड्यूल पृष्ठ पर ब्राउज़ करना और फिर इस कमांड को कंसोल में चलाना:
jQuery('table.sticky-enabled input[checked=checked]')
.closest('tr')
.find('td label strong')
.each(function() {
console.log(jQuery(this).text());
})
यह कंसोल में सभी सक्षम मॉड्यूल प्रिंट करेगा, जहां आप उन्हें कहीं भी पेस्ट कर सकते हैं।
सबसे आसान तरीका जो मैंने पाया है वह एक डेटाबेस क्वेरी है जिसे आप कस्टम मॉड्यूल या ड्रश स्क्रिप्ट में डाल सकते हैं ताकि आप इसे एक प्रारूप में आउटपुट कर सकें।
$enabled_modules = db_query("SELECT name FROM {system} WHERE type = 'module' AND status = 1");
print implode("\n", $enabled_modules);
स्थापित करें और फोर्ना को सक्षम करें मॉड्यूल को (प्रकटीकरण मैं सह- हूं)। "व्यवस्थापक" भूमिका वाले उपयोगकर्ता तब स्थित डिलीवर (नमूना) रिपोर्ट पर नेविगेट करने में सक्षम होंगेreports/drupaladmin.enabled_contributions
होंगे, जो आपको वह सूची देगा, जिसके बारे में यह प्रश्न है।
.FRX
रिपोर्ट बनाने के लिए विनिर्देश ( फ़ाइल, एक XHTML दस्तावेज़) इस प्रकार है:
<?xml version="1.0"?>
<!DOCTYPE root [
<!ENTITY nbsp " ">
]>
<html xmlns:frx="urn:FrxReports">
<head>
<title>Enabled Modules and Themes</title>
<frx:category>Drupal Administration</frx:category>
<frx:options hidden="0" />
<frx:parameters>
</frx:parameters>
<frx:docgen>
</frx:docgen>
</head>
<body>
<div frx:block="drupal/enabled_modules" id="forena-1">
<table>
<thead>
<tr>
<th>name</th>
<th>owner</th>
<th>weight</th>
</tr>
</thead>
<tbody>
<tr frx:foreach="*" id="forena-2">
<td>{name}</td>
<td>{owner}</td>
<td>{weight}</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
और यहां बताया गया है कि रिपोर्ट में उल्लिखित डेटा ब्लॉक (एसक्यूएल स्टेटमेंट) कैसा दिखता है:
--ACCESS=access administration pages
SELECT name, owner, weight FROM {system}
WHERE status=1 AND 'module'=type
ORDER BY name
यह वास्तव में "यह" है।
पुनश्च: .FRX
अपनी खुद की जरूरतों को पूरा करने के लिए फ़ाइल और / या डेटा ब्लॉक को ट्यून (अनुकूल) करने के लिए स्वतंत्र महसूस करें ।
AND 'module'=type
?! होना चाहिएAND type = 'module'
बिना ड्रम वाले लोगों के लिए: मॉड्यूल पृष्ठ पर जाएं, मॉड्यूल फ़िल्टर सक्षम होने के साथ (बिल्कुल आवश्यक नहीं, लेकिन स्वरूपण के लिए अच्छा है)।
फिर सोर्स पेज दिखाएं, "<" टेबल> "के अंदर" <"/ टेबल> के लिए मॉड्यूल HTML कॉपी करें। गेडिट में पेस्ट करें, इसके चारों ओर कुछ html लपेटें (html, बॉडी), और आपके पास एक html पेज होगा, जिसमें इंडिकेशन का संकेत भी शामिल है। अप्रयुक्त / अक्षम मॉड्यूल (चेक बॉक्स को अनियंत्रित दिखाते हुए) जो एक साइट के पुनर्निर्माण के लिए महत्वपूर्ण हो सकता है (अक्षम मॉड्यूल के रूप में इनोफ़ार की आवश्यकता हो सकती है, या स्थापित किया जा सकता है -> डेटाबेस की सफाई के लिए अनइंस्टॉल किया गया)
स्कीमा मॉड्यूल एक विकल्प है, जबकि दृश्य ट्रिक भी कर सकते हैं, हालांकि अतिरिक्त दृश्य सिस्टम मॉड्यूल के बिना, जो मुझे छोटी गाड़ी मिली, आपको न तो वर्जन नंबर मिलते हैं।
drush @sites pml --no-core --type=module --status="enabled" -y
और फ़िल्टर करके कह रहे हैं कि कुछ_मॉडल का उपयोग कर रहे हैं grep `| grep some_module`