フィラメントメニュー
v1.0.7
フィラメント パネル上のナビゲーションまたは 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
メニューのキーです。
Route admin/menus
に移動して新しいメニューを作成すると、livewire コンポーネントのコードが取得されます。
このコマンドを livewire コンポーネントとして使用するだけでメニューを構築できます
">< x-filament-menu menu = " header " />
ここで、 header
メニューのキーであり、メニューのテーブルリストでコードを準備できます。
カスタムビューを使用できます。例:
">< 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 をチェックしてください