Przyspieszenie rozwoju Drupala z konsolą Drupal i Drush
Opublikowany: 2022-02-22O tym, że Drupal 8 nie tylko unowocześnił cyfrowe doświadczenia dla użytkownika, ale także ułatwił pracę programistyczną deweloperom Drupala, pisaliśmy obszernie (jesteśmy w tym temacie). W tym artykule omówimy dwa takie narzędzia narzędziowe Drupal 8/9, które znacznie uprościły i usprawniły sposób pracy z kodem, modułami i instalacjami Drupala - Drupal Console i Drush.
Co to jest konsola Drupal
Od czasu zaawansowania Drupala 8, konieczne stało się dodanie dużej ilości kodu, aby zbudować nowy moduł. Oczywiście możesz po prostu skopiować i wkleić kod, ale powtarzanie tego może otworzyć drzwi do wielu błędów. W porządku. Jesteśmy ludźmi. Na szczęście mamy konsolę Drupal - zestaw narzędzi uruchamianych na CLI (Command Line Interface), który pozwala automatycznie generować kod wzorcowy. Wykorzystuje konsolę Symfony i inne komponenty firm trzecich do generowania większości kodu potrzebnego do zbudowania modułu Drupal 8/9.
Co to jest Drush
Drush (Drupal + Shell) to oryginalne narzędzie CLI dla Drupala. Pozwala łatwo uruchamiać nowe serwisy Drupal oraz usprawnić zadania programistyczne i administracyjne. Drush jest dostarczany z wieloma łatwymi do zaimplementowania poleceniami, które umożliwiają interakcję z instalacjami Drupala, motywami, modułami i nie tylko. Niektóre z innych zadań, które możesz wykonać za pomocą Drush, to eksportowanie/importowanie konfiguracji, buforowanie, aktualizacja modułów contrib, aktualizacja bazy danych i wiele innych.
Drush dobrze współpracuje z Drupalem 6/7/8/9 i oferuje zalety nowoczesnych praktyk programistycznych. Pozwala zaoszczędzić czas rozwoju, zarówno podczas migracji istniejących modułów Drupala, jak i podczas tworzenia nowych, zwiększając tym samym produktywność. Dowiedz się, jak tworzyć własne niestandardowe polecenia Drush w tym artykule.
Instalowanie konsoli Drupala
Konsolę Drupal można zainstalować różnymi metodami, takimi jak kompozytor, curl, phar itp. Oto przykład instalacji za pomocą kompozytora:
Zainstaluj globalnie przez kompozytor
composer global require drupal/console
Instalacja specyficzna dla miejsca
1. Przejdź do strony Drupal w CLI:
cd /path/to/drupal_site
2. Uruchom kompozytora wymagaj polecenia:
composer require drupal/console:~1.0 --prefer-dist --optimize-autoloader
Instalowanie Drusha
Drush można zainstalować różnymi metodami, takimi jak kompozytor, curl lub phar. Oto przykład instalacji za pomocą kompozytora:
Zainstaluj globalnie przez kompozytor
composer global require drush/drush
Instalacja specyficzna dla miejsca
1. Przejdź do strony Drupal w CLI:
cd /path/to/drupal_site
2. Uruchom kompozytora wymagaj polecenia:
composer require drush/drush
Polecenia i użycie konsoli Drupal
Sprawdź niektóre z najpopularniejszych i najbardziej pomocnych poleceń konsoli Drupal i sprawdź, kiedy można z nich korzystać.
Polecenie debugowania Drupala
- Aby zidentyfikować punkty przerwania podczas pracy nad motywami:
drupal debug:breakpoints {theme_name}
Przykład: debugowanie drupala: punkty przerwania bartik
- Aby łatwo znaleźć klasę i nazwę usługi podczas pracy z usługami:
drupal debug:config:settings
- Aby zidentyfikować punkt awarii, gdy masz bolesne złamane bloki:
drupal debug:plugin block broken
Generuj niestandardowe moduły
Utwórz niestandardowe moduły w ciągu minuty za pomocą tego polecenia:
drupal generate:module \ --module="modulename" \ --machine-name="modulename" \ --module-path="/modules/custom" \ --description="My Awesome Module" \ --core="8.x" \ --package="Custom" \ --module-file \ --composer \ --test \ --twigtemplate
Wygeneruj niestandardowy formularz
Wymagania dotyczące formularzy niestandardowych są bardzo powszechne we wszystkich projektach. Łatwe tworzenie niestandardowego formularza za pomocą tego polecenia:
drupal generate:form \ --module="modulename" \ --class="DefaultForm" \ --form- \ --config-file \ --path="/modulename/form/default"
Wygeneruj formularz konfiguracji
Podobnie jak formularze niestandardowe, wymagamy również formularzy skonfigurowanych przez administratora. Za pomocą tego polecenia możesz je łatwo utworzyć:
drupal generate:form:config \ --module="modulename" \ --class="DefaultForm" \ --form- \ --config-file \ --path="/modulename/form/default"
Wygeneruj kontroler
W przypadku niestandardowych formularzy będziesz potrzebować kontrolerów. Możesz łatwo tworzyć niestandardowe kontrolery za pomocą tego polecenia:
drupal generate:controller \ --module="modulename" \ --class="DefaultController" \ --routes='"title":"ControllerMethod", "name":"modulename.default_controller_hello", "method":"hello", "path":"/modulename/hello/{name}"' \ --test
Wygeneruj jednostkę niestandardową
Tworzenie niestandardowej encji nie musi być czasochłonne, za pomocą tego polecenia możesz ją szybko i łatwo utworzyć:
drupal generate:entity:content \ --module="modulename" \ --entity-class="DefaultEntity" \ --entity-name="default_entity" \ --base-path="/admin/structure" \ --label="Default entity" \ --is-translatable \ --revisionable --has-forms
Wygeneruj usługę niestandardową
To polecenie pomaga tworzyć niestandardowe usługi:
drupal generate:service \ --module="modulename" \ --name="modulename.default" \ --class="DefaultService" \ --interface \ --interface-name="InterfaceName" \ --path-service="/modules/custom/modulename/src/"
Utwórz zawartość, taką jak użytkownik:utwórz
Aby utworzyć użytkownika z zaplecza nie musisz otwierać przeglądarki i logować się z adminem, a następnie zakładać konto. Po prostu użyj tego polecenia, aby błyskawicznie utworzyć użytkownika:
drupal user:create username password \ --roles='authenticated' \ --email="[email protected]" \ --status="1"
Generuj wtyczkę jak blok
Konsola Drupal jest również w stanie generować wiele wtyczek, takich jak bloki. Oto przykład tworzenia własnego bloku:
drupal generate:plugin:block \ --module="modulename" \ --class="DefaultBlock" \ --label="Default block" \ --plugin- \ --theme-region="header" \ --inputs='"name":"inputtext", "type":"text_format", "label":"InputText", "options":"", "description":"Just an input text", "maxlength":"", "size":"", "default_value":"", "weight":"0", "fieldset":""'
Więcej informacji o poleceniach konsoli Drupal i ich użyciu znajdziesz w sekcji Dostępne polecenia.
Najpopularniejsze polecenia Drush
drush Cr | Aby odbudować pamięć podręczną Drupala |
drush cim | Aby zaimportować wszystkie pliki konfiguracyjne |
drush cex | Aby wyeksportować pliki konfiguracyjne |
drusz uli | Aby zalogować się za pomocą jednorazowego adresu URL logowania |
dresz pl {nazwa_modułu} | Włącza dowolny moduł niestandardowy, contrib lub core |
drush pmu {nazwa_modułu} | Wyłącza i odinstalowuje dowolny moduł |
dresz pm: lista | Wyświetla listę wszystkich modułów z pakietem, nazwą modułu, wersją i statusem |
drush updb | Aby zaktualizować bazę danych po aktualizacji |
drush watchdog:lista(ws) | Wyświetla listę wszystkich wiadomości watchdog |
drush watchdog: ogon (masa) | Ciągłe komunikaty nadzoru ogonowego |
drush watchdog:tail --type=php | Ciągłe wiadomości monitorujące ogon o określonym typie ważności |
Jeszcze kilka fajnych poleceń Drush
stan drushu | Zawiera przegląd aktualnej instalacji Drupala |
generować drush | Podobnie jak Drupal Console, polecenie drush generate pomaga generować encje, wtyczki i nie tylko |
dresz pm: bezpieczeństwo | Aby sprawdzić pakiet kompozytora Drupal pod kątem aktualizacji bezpieczeństwa |
migracja drush:stan | Wyświetla wszystkie migracje z aktualnym statusem |
drush użytkownik:hasło {nazwa użytkownika} {hasło} | Ustawia hasło użytkownika |
użytkownik drush: blok | Pomaga zablokować użytkownika |
drrush użytkownik:rola:dodaj | Pomaga dodawać role użytkowników |
drush sql-dump | Eksportuje bazę danych Drupal jako SQL przy użyciu mysqldump lub odpowiednika. |