Mempercepat Pengembangan Drupal dengan Konsol Drupal dan Drush

Diterbitkan: 2022-02-22

Kami telah menulis secara ekstensif (kami mendalami hal ini) tentang bagaimana Drupal 8 tidak hanya memodernisasi pengalaman digital bagi pengguna, tetapi juga memudahkan pekerjaan pengembangan untuk pengembang Drupal. Dalam artikel ini kita akan membahas dua alat utilitas Drupal 8/9 yang secara besar-besaran menyederhanakan dan meningkatkan cara Anda bekerja dengan kode, modul, dan instalasi Drupal - Konsol Drupal dan Drush.

Konsol Drupal

Apa itu Konsol Drupal?

Sejak kemajuan Drupal 8, perlu untuk menambahkan banyak kode boilerplate untuk membangun modul baru. Tentu saja, Anda cukup menyalin dan menempelkan kode, tetapi melakukannya berulang kali dapat membuka banyak kesalahan. Tidak apa-apa. Kami manusia. Untungnya, kami memiliki konsol Drupal - seperangkat alat yang Anda jalankan pada CLI (Command Line Interface) yang memungkinkan Anda membuat kode boilerplate secara otomatis. Ini memanfaatkan Symfony Console dan komponen pihak ketiga lainnya untuk menghasilkan sebagian besar kode yang diperlukan untuk membangun modul Drupal 8/9.

Apa itu Drush

Drush (Drupal + Shell) adalah alat CLI asli untuk Drupal. Ini memungkinkan Anda menjalankan situs web Drupal baru dengan mudah dan membantu Anda merampingkan tugas pengembangan dan administrasi. Drush hadir dengan banyak perintah yang mudah diimplementasikan yang memungkinkan Anda berinteraksi dengan instalasi Drupal, tema, modul, dan lainnya. Beberapa tugas lain yang dapat Anda lakukan dengan Drush adalah mengekspor/mengimpor konfigurasi, caching, memperbarui modul contrib, memperbarui database, dan banyak lagi.

Drush bekerja dengan baik dengan Drupal 6/7/8/9 dan menawarkan keuntungan dari praktik pengembangan modern. Ini membantu menghemat waktu pengembangan, baik selama migrasi modul Drupal yang ada dan saat membuat yang baru sehingga meningkatkan produktivitas. Pelajari cara membuat perintah Drush kustom Anda sendiri di artikel ini.

Memasang Konsol Drupal

Konsol Drupal dapat diinstal melalui berbagai metode seperti komposer, curl, phar dll. Berikut adalah contoh menginstalnya menggunakan komposer:

Instal secara global melalui komposer

 composer global require drupal/console

Instalasi khusus situs

1. Arahkan ke situs Drupal di CLI:

 cd /path/to/drupal_site

2. Jalankan perintah composer require:

 composer require drupal/console:~1.0 --prefer-dist --optimize-autoloader

Menginstal Drush

Drush dapat diinstal melalui berbagai metode juga seperti composer, curl atau phar. Berikut adalah contoh menginstalnya menggunakan komposer:

Instal secara global melalui komposer

 composer global require drush/drush

Instalasi khusus situs

1. Arahkan ke situs Drupal di CLI:

 cd /path/to/drupal_site

2. Jalankan perintah composer require:

 composer require drush/drush

Perintah dan Penggunaan Konsol Drupal

Lihat beberapa perintah Konsol Drupal yang paling populer dan bermanfaat dan kapan perintah tersebut dapat digunakan.

  • Perintah Debug Drupal

  • Untuk mengidentifikasi breakpoint saat mengerjakan tema:
 drupal debug:breakpoints {theme_name}

Contoh: drupal debug:breakpoints bartik

  • Untuk menemukan kelas dan nama layanan dengan mudah saat bekerja dengan layanan:
 drupal debug:config:settings
  • Untuk mengidentifikasi titik kegagalan ketika Anda memiliki blok rusak yang menyakitkan:
 drupal debug:plugin block broken
  • Hasilkan Modul Kustom

Buat modul khusus dalam satu menit menggunakan perintah ini:

 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
  • Hasilkan Formulir Kustom

Persyaratan formulir khusus sangat umum di seluruh proyek. Membuat formulir khusus dengan mudah dengan perintah ini:

 drupal generate:form \ --module="modulename" \ --class="DefaultForm" \ --form- \ --config-file \ --path="/modulename/form/default"
  • Buat Formulir Konfigurasi

Seperti halnya formulir khusus, kami juga memerlukan formulir yang dikonfigurasi administrator. Dengan perintah ini Anda dapat membuatnya dengan mudah:

 drupal generate:form:config \ --module="modulename" \ --class="DefaultForm" \ --form- \ --config-file \ --path="/modulename/form/default"
  • Hasilkan Pengontrol

Dengan formulir khusus, Anda akan membutuhkan pengontrol. Anda dapat dengan mudah membuat pengontrol khusus dengan perintah ini:

 drupal generate:controller \ --module="modulename" \ --class="DefaultController" \ --routes='"title":"ControllerMethod", "name":"modulename.default_controller_hello", "method":"hello", "path":"/modulename/hello/{name}"' \ --test
  • Hasilkan Entitas Kustom

Membuat entitas kustom tidak harus memakan waktu lama, Dengan perintah ini Anda dapat membuatnya dengan cepat dan mudah:

 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
  • Hasilkan Layanan Kustom

Perintah ini membantu Anda membuat layanan kustom:

 drupal generate:service \ --module="modulename" \ --name="modulename.default" \ --class="DefaultService" \ --interface \ --interface-name="InterfaceName" \ --path-service="/modules/custom/modulename/src/"
  • Buat Konten seperti pengguna: buat

Untuk membuat pengguna dari back-end Anda tidak perlu membuka browser dan login dengan admin lalu membuat akun. Cukup gunakan perintah ini untuk membuat pengguna dalam sekejap:

 drupal user:create username password \ --roles='authenticated' \ --email="[email protected]" \ --status="1"
  • Hasilkan Plugin seperti blok

Konsol Drupal juga mampu menghasilkan banyak plugin seperti blok. Berikut adalah contoh membuat blok khusus:

 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":""'

Untuk perintah dan penggunaan konsol Drupal lainnya, periksa perintah yang Tersedia ini.

Perintah Drush Paling Populer

drush cr Untuk membangun kembali cache Drupal
drush cim Untuk mengimpor semua file konfigurasi
drush cex Untuk mengekspor file konfigurasi
drush uli Untuk masuk menggunakan url masuk satu kali
drush di {module_name} Mengaktifkan modul apa pun baik kustom atau kontribusi atau inti
drush pmu {nama_modul} Menonaktifkan dan mencopot pemasangan modul apa pun
drush pm:daftar Daftar semua modul dengan paket, nama modul, versi dan status
drush updb Untuk memperbarui database setelah memutakhirkan
pengawas drush: daftar(ws) Mencantumkan semua pesan pengawas
pengawas drush: ekor (wt) Pesan pengawas ekor terus menerus
pengawas drush:tail --type=php Pesan pengawas ekor berkelanjutan dengan jenis keparahan tertentu

Beberapa Perintah Drush yang Lebih Keren

status mabuk Memberikan gambaran tentang instalasi Drupal saat ini
hasil drush Seperti halnya Konsol Drupal, perintah drush generate membantu menghasilkan entitas, plugin, dan lainnya
drush pm:keamanan Untuk memeriksa paket komposer Drupal untuk pembaruan keamanan
drush bermigrasi: status Daftar semua migrasi dengan status saat ini
drush user:sandi {namapengguna} {sandi} Setel kata sandi pengguna
pengguna drush: blok Membantu memblokir pengguna
drush pengguna:peran:tambah Membantu menambahkan peran pengguna
drush sql-dump Mengekspor database Drupal sebagai SQL menggunakan mysqldump atau yang setara.