Menu builder (bəndlər toplumu yaradan)
Hər vaxtınız xeyir, dostlar.
Laravel + Voyager ilə biz 7 dəqiqəyə bir dənə bloq yaratmışdıq. Həmin bloqda biz menunu düzəldəndə, menu statik oldu və Voyagerin təqdim etdiyi menu builderdən istifadə etmədik. Menu builder şəkildə gördüyünüz kimi, admin paneldə yerləşir. Burada biz menu yaradıb ona ad veririk. Misal üçün biz Main(əsas) menu adını verək “Main menu”. Sonra ona yeni menu item (menyunun bəndi) əlavə edirik. “Title of the Menu Item” biz veb səhifəmizdə görəcəyimiz bəndin adıdır. “Link type” (linkin növü) bəndin bizi yönəldəcək link necə olmalıdır statik (dəyişməyən) vəya dinamik (dəyişən) olub olmamasını seçirik. Daha sonra “URL for the Main item” hissəsinə routumuzu qeyd edirik. “Font Icon class for the Menu Item (Use a Voyager Font Class)” Burada bəndi əks etdirən balaca şəkil formasında icon (işarə) əlavə edə bilərik. Lakin hələlik onların istifadəsindən danışmırıq. Eynən rəng barəsində də heçnə yazmaq istəmirəm hələki. Sonda bizə verdiyi seçim, yeni yeni səhifə kimi açsın ya elə olduğumuzda. Ümumi bəndlərin əlavə edilməsi üçün olan pəncərənin xarici görünüşünü aşağıda şəkildə görə bilərsiniz.
Nəisə uzun sözün qısası, menyunu yaratdıqdan sonra onu koda əlavə etmək üçün bir neçə üsulumuz var.
Birinci üsul sadəcə istədiyimiz yerdə menyunu adı ilə qeyd etməkdir. Blade faylında bu cür qeyd edirik {{ menu(“menyunun adı”) }}. Nəticə menyunuzun düzülməmiş bir siyahı olacaq. Əgər bootstrap istifadə etmək istəyirsinizsə ikinci üsuldan istifadə edə bilərsiniz.
İkinci üsul isə əlavə arqument kimi bootstrap istifadə etməkdir. Beləliklə bizim blade faylımızda menyunun harada əks olunmağını istəyiriksə, orada sadəcə {{ menu( “menyunun adı”, “bootstrap” ) }} yazırıq. Əslində ikinci arqumentə başqa qiymət də vermək olar. Bu da artıq üçüncü üsul haqqında yazmağımıza səbəb olur.
Üçüncü üsul ilə biz istədiyimiz formatda menyunu hazırlaya bilərik. İstədiyimizə nail olmaq üçün bir dənə blade fayl yaradırıq daxilində menyunun strukturunu qururuq, stilini hazırlayırıq, sonra da onu istədiyimiz digər blade faylında qeyd edə bilirik.
Yaradacağımız faylın adı mainMenu.blade.php olsun. Daxilində növbəti kodu yazaq:
<ul class="navbar-nav ms-auto py-4 py-lg-0">
@foreach($items as $menu_item)
<li class="nav-item"><a class="nav-link px-lg-3 py-3 py-lg-4" href="{{ $menu_item->link() }}">{{ $menu_item->title }}</a></li>
@endforeach
</ul>
Deməli biz menyumuzu istədiyimiz yerə əlavə etmək üçün blade faylında {{ menu(“menyunun adı”, “mainMenu”) }} yazmalıyıq. Üçüncü üsul ilə istədiyimiz kimi menyunu düzəldə bilərik. Baxmayaraq ki, Voyagerin menyu düzəldəndə icon seçimi verilib, verilənlər bazasında heç bir icon üçün nəzərdə tutlan sütün görmədim. Düşünürəm yoxlamaq və ya tapşırıq olaraq icon əlavə etməyi öz üzərinizə götürə bilərsiniz.
P.S. Nəzərinizə çatdırım ki, məqalə voyagerin rəsmi dokumentasiyasına əsasən yazılıb.
Əlbəttə Azərbaycan dilində yazılan məqalənin üzərindən gəlir əldə etmək olmur. Ona görə siz oxuyucuların dəstəyinə güvənib fəaliyyətimizə davam edirik. Dəstək olmaq istəyənlər, istənilən məbləği ianə edə bilər.
Diqqətiniz üçün təşəkkür edirəm.
İanə: https://aytiqaqash.com/donate
Youtube: https://www.youtube.com/c/AyTiQaqa%C5%9F
Facebook Qrup: https://www.facebook.com/groups/aytiqaqash
Facebook Səhifə: https://www.facebook.com/aytiqaqash
Telegram Qrup: https://t.me/aytiqaqashlar
Telegram Kanal: https://t.me/aytiqaqash
İnstagram: https://www.instagram.com/aytiqaqash/
Twitter: https://twitter.com/aytiqaqash