شناسه : 429
يكشنبه 3 شهريور 1398 ساعت 16:06 2019-8-25 16:06:50
برای ایجاد یک ماژول ساده با پیش نیازها و مقدمات ضروری در دروپال چند روش وجود دارد. خب این یعنی چی؟
یعنی اینکه اگر میخواهید یک ماژول جدید ایجاد کنید که یک سری کارهای خاص و ویژه ای انجام دهد ولی نمیدانید که ساختار و فایلهای استاندارد حداقلی و ضروری برای ایجاد آن چیست و یا اینکه حوصله ایجاد یک سری فایلها و ساختارهای تکراری را ندارید، آنگاه میتوانید از ابزارهای آماده برای این کار استفاده کنید. به این ابزارها کدساز یا Code Generator یا Code Builder یا همچین چیزی میگویند.
برای ایجاد یک ماژول ساده با پیش نیازها و مقدمات ضروری در دروپال چند روش وجود دارد. خب این یعنی چی؟ یعنی اینکه اگر میخواهید یک ماژول جدید ایجاد کنید که یک سری کارهای خاص و ویژه ای انجام دهد ولی نمیدانید که ساختار و فایلهای استاندارد حداقلی و ضروری برای ایجاد آن چیست و یا اینکه حوصله ایجاد یک سری فایلها و ساختارهای تکراری را ندارید، آنگاه میتوانید از ابزارهای آماده برای این کار استفاده کنید. به این ابزارها کدساز یا Code Generator یا Code Builder یا همچین چیزی میگویند.

کدسازهای برجسته در دروپال عبارتند از:

Drupal Console   -   Drush   -   Module Builder

با هم نگاهی به این کدسازها میندازیم:

 

Drupal Console

دروپال کنسول یک ابزار خط فرمان برای دروپال 8 هست: CLI = Command Line Tool

این ابزار بعد از دراش ایجاد شده و رقابت سختی با دراش دارد. این ابزار یک سری کارهای روتین نگهداری سایت مثل خالی کردن کش، اجرای کران، بک آپ گیری، ورود تنظیمات پیکربندی و کارهای توسعه ای مثل ایجاد ماژول های ساده و پیشنیازهای کد نویسی را انجام میدهد. برای مشاهده لیست دستورهای کدساز موجود در دروپال کنسول بعد از اطمینان از نصب صحیح دروپال کنسول، این فرمان را اجرا کنید:

./vendor/bin/drupal generate
or
drupal generate

نتیجه:
 

Drupal Console version 1.9.1

Available commands for the "generate" namespace:
  generate:ajax:command (gac)                 Generate & Register a custom ajax command
  generate:authentication:provider (gap)      Generate an Authentication Provider
  generate:breakpoint (gb)                    Generate breakpoint
  generate:cache:context (gcc)                Generate a cache context
  ...

 

ایجاد ماژول با دروپال کنسول :

drupal generate:module

سپس سوالهایی که از شما درباره اطلاعات اولیه ماژول مورد نیاز میپرسد و ماژول را ایجاد میکند:

 


 

 

ایجاد یک بلاک با کمک دروپال کنسول:

drupal generate:plugin:block

در سوال اول میپرسد که این بلاک را به کدام ماژول میخواهید اضافه کنید. یا در واقع میخواهید این بلاک توسط کدام مازول ایجاد شود و به کد کدام ماژول اضافه شود:

 Enter the module name [webform_access]:
 > dc_demo

در سوالهای بعدی نام کلاس، برچسب کلاس و شناسه کلاس را از شما میپرسد:

 Enter the plugin class name [DefaultBlock]:
 >

 Enter the plugin label [Default block]:
 >

 Enter the plugin id [default_block]:
 >

 

 

دروپال کنسول تا امروز حدود 5 میلیون دانلود، 300 مشارکت کننده در کد و 532 زیر توسعه شاخه متفاوت داشته است.

توضیحات بیشتر و منابع آموزشی مربوط به دروپال کنسول را از در سایت آن بررسی کنید: drupalconsole.com

 

 

 

Drush

دراش ابزار خط فرمان اصلی (CLI = Command Line Tool) دروپال است. دراش را میتوانید برای بازسازی کش، فعال و غیرفعال کردن ماژول ها، نصب کامل سایت و بک آپ گیری و بسیاری موارد دیگر استفاده کنید. این ابزار تانسخه 9 قابلیت کدساز نداشت. تا اینکه رقابت با سایر ابزارها این امکان را در نسخه 9 دراش به ارمغان آورد.

برای مشاهده همه دستورهای آماده برای کدسازی از دستور زیر استفاده کنید:

drush generate

نتیجه:

Drush generate 9.7.1

Run `drush generate [command]` and answer a few questions in order to write starter code to your project.

 Available commands:
 _global:
   composer (composer.json)                                       Generates a composer.json file
   controller                                                     Generates a controller
   field                                                          Generates a field
   ...

 

برای ساخت یک ماژول:

drush generate module-standard

و پرسشی چند در مورد ماژول مورد نیاز:

Module name:
➤ Drush demo

Module machine name [drush_demo]:
➤

Module description [The description.]:
➤

 

 

تفاوت ایجاد ماژول در دراش و دروپال کنسول این است که هنگام ساخت ماژول در دراش همزمان از شما در مورد ایجاد و افزودن انواع فایلها و پلاگینها پرسش میشود. اما در دروپال کنسول ابتدا مازول را ایجاد میکند و سپس هریک از فایلها و پلاگین ها را میتوانید به صورت مجزا به هر ماژولی اضافه کنید.

 

ایجاد یک فرم در دراش:

drush generate form-simple

 

دراش تاکنون حدود 3.5 میلیون بار دانلود شده است.

جزئیات بیشتری از دراش را در سایت اصلی آن بررسی نمایید: drush.org

 

 

Module Builder

ماژول بیلدر یک ماژول دروپالی است که با کمک رابط کاربری امکان ایجاد ماژول و سایر مخلفات آن را میدهد؛ بر خلاف دو روش قبلی که مبتنی بر خط فرمان بودند و نیاز به نصب ابزار خارج از دروپال بود.

این ماژول بعد از نصب از شما درخواست میکند که کلیه کدهای دروپال نصب شده شما را آنالیز کند تا هنگام ساخت ماژول و پلاگین یا هر کد دیگری با اشراف به وضعیت فعلی پیشنهادهای مناسب و بدون مشکل ارائه دهد:

 

 

بعد از آنالیز وضعیت و آمار همه چیز را شناسایی میکند:

 

 

سپس می‌توانید انواع کدهای مورد نیاز خود را از طریق تبهای موجود ایجاد نمایید:

 

جزئیات بیشتر از ماژول Module Builder  را در صفحه خودش در سایت دروپال مطالعه و بررسی کنید: https://www.drupal.org/project/module_builder

 

 

در آخر

امیدوارم بعد از خواندن این مقاله حس بهتری نصبت به توسعه کدها و ماژول در دروپال داشته باشید و کارتون راحتتر شده باشد. یادتون باشه که این ابزارها حتما روی محیط توسعه و نسخه Develop دروپالتون باید استفاده بشوند و بعد از نهایی شدن کد به نسخه در حال بهره برداری از پروژه منتقل شوند.

 

موفق باشید

علی خالقیان

ارسال پیام