منشئ قاعدة بيانات القائمة لاستخدامه كملف التنقل على لوحة Filament أو كمكون Livewire
composer require tomatophp/filament-menus
بعد تثبيت الحزمة الخاصة بك يرجى تشغيل هذا الأمر
php artisan filament-menus:install
أخيرًا قم بتسجيل المكون الإضافي على /app/Providers/Filament/AdminPanelProvider.php
-> plugins (
Filament SpatieLaravelTranslatablePlugin :: make ()-> defaultLocales ([ ' en ' , ' ar ' ])
TomatoPHP FilamentMenus FilamentMenusPlugin :: make ()
)
يمكنك استخدام هذه الحزمة كملاحة في لوحة إدارة Filament
use Filament Navigation NavigationBuilder ;
use Filament Navigation NavigationGroup ;
use TomatoPHP FilamentMenus FilamentMenuLoader ;
$ panel -> navigation ( function ( NavigationBuilder $ builder ){
return $ builder
// Use Inside Group
-> groups ([
NavigationGroup :: make ()
-> label ( ' Dashboard ' )
-> items ( FilamentMenuLoader :: make ( ' dashboard ' )),
])
// Use Directly
-> items ( FilamentMenuLoader :: make ( ' dashboard ' ));
})
حيث dashboard
هي مفتاح القائمة.
انتقل إلى مسار admin/menus
وقم بإنشاء قائمة جديدة وستحصل على رمز مكون Livewire
يمكنك إنشاء قائمة فقط باستخدام هذا الأمر كمكون مباشر
" style=";text-align:right;direction:rtl">< x-filament-menu menu = " header " />
حيث يكون header
مفتاحًا للقائمة وستحصل على الكود جاهزًا في قائمة جدول القوائم
يمكنك استخدام العرض المخصص على سبيل المثال:
" style=";text-align:right;direction:rtl">< x-filament-menu menu = " header " view = " menu-item " />
بشكل افتراضي نستخدم Tailwind كطريقة عرض رئيسية مع هذا الرمز
@foreach ( $menuItems as $item )
< a class = " text-gray-500 " href = " {{ $item [ ' url ' ] } } " @if ( $item [ ' blank ' ] ) target = " _blank " @endif >
< span class = " flex justify-between " >
@if ( isset ( $item [ ' icon ' ]) && ! empty ( $item [ ' icon ' ]) )
< x-icon class = " w-4 h-4 mx-2 " name = " {{ $item [ ' icon ' ] } } " > x-icon >
@endif
{{ $item [ ' title ' ] } }
span >
a >
@endforeach
أو يمكنك استخدام menu($key)
للحصول على عناصر القائمة
@foreach ( menu ( ' header ' ) as $item )
< a class = " text-gray-500 " href = " {{ $item [ ' url ' ] } } " @if ( $item [ ' blank ' ] ) target = " _blank " @endif >
< span class = " flex justify-between " >
@if ( isset ( $item [ ' icon ' ]) && ! empty ( $item [ ' icon ' ]) )
< x-icon class = " w-4 h-4 mx-2 " name = " {{ $item [ ' icon ' ] } } " > x-icon >
@endif
{{ $item [ ' title ' ] } }
span >
a >
@endforeach
يمكنك نشر ملف التكوين باستخدام هذا الأمر
php artisan vendor:publish --tag= " filament-menus-config "
يمكنك نشر ملف المشاهدات باستخدام هذا الأمر
php artisan vendor:publish --tag= " filament-menus-views "
يمكنك نشر ملف اللغات باستخدام هذا الأمر
php artisan vendor:publish --tag= " filament-menus-lang "
يمكنك نشر ملف الترحيل باستخدام هذا الأمر
php artisan vendor:publish --tag= " filament-menus-migrations "
تحقق من TomatoPHP الرائع الخاص بنا