|
|
před 3 dny | |
|---|---|---|
| .. | ||
| src | před 3 dny | |
| README.md | před 3 dny | |
| composer.json | před 3 dny | |
为 Bagisto 提供前台(Shop)三级导航菜单管理,支持在后台 Settings 菜单下进行菜单项的增删改查,并通过 GraphQL 接口对外提供数据查询。
name(名称)、slug(唯一标识)、url(链接)、image(图片)、banner(横幅)、status(状态)、sort_order(排序)image 与 banner 支持图片上传(上传至 S3,自动返回 URL 存储)Longyi\ImageUpload 包的 ImageUploadService,通过 admin.image_upload.upload 接口上传uploads/front-menu 目录,返回的 URL 写入 image / banner 字段vuedraggable 组件,可拖拽调整菜单顺序与层级admin.frontmenu.reorder 接口保存新的 parent_id 与 sort_orderbootstrap/providers.php 中已添加:
Longyi\FrontMenu\Providers\FrontMenuServiceProvider::class,
php artisan migrate
php artisan front-menu:init
php artisan cache:clear
php artisan config:clear
php artisan view:clear
php artisan route:clear
php artisan bagisto-api:clear-cache
在后台 Settings → Roles 中为对应角色勾选「前端导航菜单」权限,菜单即可在侧边栏 Settings 下显示。
GraphQL 端点:/api/graphql(需携带 storefront key)。
{
frontMenuTrees {
edges {
node {
id
name
slug
url
image
banner
sortOrder
status
children {
edges {
node {
id
name
slug
url
children {
edges {
node {
id
name
slug
url
}
}
}
}
}
}
}
}
}
}
{
frontMenu(id: "1") {
id
name
slug
url
image
banner
sortOrder
status
}
}
{
frontMenus {
edges {
node {
id
name
slug
url
}
}
}
}
packages/Longyi/FrontMenu/
├── composer.json
├── README.md
└── src/
├── Config/
│ ├── menu.php # 后台菜单配置
│ └── acl.php # ACL 权限配置
├── Console/
│ └── Commands/
│ └── InitializeFrontMenu.php
├── Database/
│ ├── Migrations/
│ │ └── 2026_08_28_000001_create_front_menu_items_table.php
│ └── Seeders/
│ └── FrontMenuItemSeeder.php
├── Http/
│ └── Controllers/
│ └── FrontMenuController.php
├── Models/
│ └── FrontMenuItem.php
├── Providers/
│ └── FrontMenuServiceProvider.php
├── Repositories/
│ └── FrontMenuItemRepository.php
├── Resources/
│ ├── lang/
│ │ ├── en/app.php
│ │ └── zh_CN/app.php
│ └── views/
│ └── admin/menu/
└── Routes/
└── admin-routes.php