Czy istnieje sposób posiadania listy wszystkich używanych (aktywnych) modułów w witrynie?
Jestem w trakcie dokumentowania strony i chciałbym wymienić wszystkie aktywne moduły, wiem, że mogę je wziąć, admin/modules
ale musi być inny sposób.
Możesz użyć drush pm-list --type=Module --status=enabled
polecenia, aby uzyskać listę wszystkich zainstalowanych modułów.
Jeśli chcesz wykluczyć moduły podstawowe, użyj drush pm-list --type=Module --no-core --status=enabled
drush @sites pml --no-core --type=module --status="enabled" -y
i filtrując powiedz some_module za pomocą grep `| grep some_module`Dwie opcje, których używam, to Drush i własny skrypt.
W przypadku Drush możesz użyć
drush pm-list
:Napisałem również ten skrypt dla Drupala 6. Musisz zmodyfikować bootstrap dla Drupala 7 i możesz również ulepszyć sprawdzanie ścieżki. Umieszczam to w pliku o nazwie module.php w moim DOCROOT i dodam ograniczenie dostępu wokół niego, aby zapobiec wywoływaniu go z natury.
Ten skrypt można wywołać za pomocą drush, używając:
drush scr modules.php
źródło
Moduł Enabled Modules (enabled_modules) udostępnia listy wszystkich włączonych modułów na stronie internetowej.
Lub,
Możesz użyć tej funkcji API lista_modułów, aby uzyskać wszystkie włączone moduły.
źródło
Tak, sprawdź moduł Filter Module : Jest to doskonały pomocnik administratora, który znacznie ułatwia zarządzanie modułami.
źródło
Drush make ma pierwotną funkcję generowania makefile. Aby go użyć, po prostu zmień katalog na instalację Drupal, z której chcesz wygenerować plik, i uruchom następującą komendę:
drush generator-makefile /path/to/make-file.make
Otrzymasz make-file.make z listą modułów. Następnie możesz załadować te moduły w innym projekcie. Przeczytaj http://www.drush.org/en/master/make/#usage
źródło
Jeśli nie masz dostępu do wiersza poleceń, aby uruchomić drush, być może szukasz czegoś, co możesz zrobić z internetowego interfejsu użytkownika. Najlepszym rozwiązaniem, jakie mogłem znaleźć, było przejście do strony Moduły, a następnie uruchomienie tego polecenia w konsoli:
Spowoduje to wydrukowanie wszystkich włączonych modułów w konsoli, gdzie można je skopiować i wkleić w dowolnym miejscu.
źródło
Najprostszym sposobem, jaki znalazłem, jest zapytanie do bazy danych, które można umieścić w niestandardowym module lub skrypcie Drush, aby uzyskać wynik w żądanym formacie.
$enabled_modules = db_query("SELECT name FROM {system} WHERE type = 'module' AND status = 1"); print implode("\n", $enabled_modules);
źródło
Zainstaluj i włącz moduł Forena (ujawnienie, że jestem współobsługą ). Użytkownicy z rolą „administrator” będą mogli przejść do dostarczonego (przykładowego) raportu znajdującego się pod adresem
reports/drupaladmin.enabled_contributions
, który da ci listę, o którą chodzi.Oto jak wygląda specyfikacja (
.FRX
plik, dokument XHTML) do utworzenia raportu:A oto jak wygląda blok danych (instrukcja SQL), o którym mowa w raporcie:
To naprawdę „to”.
PS: możesz dostroić (dostosować)
.FRX
plik i / lub blok danych, aby dopasować go do własnych potrzeb.źródło
AND 'module'=type
?! Powinien byćAND type = 'module'
Dla osób bez drush: przejdź do strony modułów, z włączonym filtrem modułów (nie jest to absolutnie konieczne, ale dobre do formatowania).
Następnie pokaż stronę źródłową, skopiuj moduły HTML wewnątrz "<" table> "do" <"/ table>. Wklej do gedit, owiń wokół niego trochę html (html, body), a otrzymasz stronę html, w tym wskazanie nieużywane / wyłączone moduły (pokazujące pole wyboru niezaznaczone), które mogą być ważne podczas przebudowy strony (o ile mogą być potrzebne wyłączone moduły lub mogą zostać zainstalowane -> odinstalowane w celu wyczyszczenia bazy danych)
źródło
Moduł schematu jest jedną z opcji, podczas gdy Widoki mogą również załatwić sprawę, chociaż bez dodatkowego modułu Widoku Systemu, w którym znalazłem błąd, nie otrzymujesz numerów wersji.
źródło