feat(nav): rewrite top header to zibll 1:1 DOM/CSS/JS contract

Replace hybrid site-nav/drawer shell with zibll navbar-top layouts 1/2/3,
body.mobile-navbar-show drawer, wired NavWalker + aksrt_menu_options meta,
nav_folding/chevron, VIP switches, and SPA/PHP schema parity. No dual-class
compat paths.
This commit is contained in:
2026-07-22 11:18:34 +08:00
parent b8ee6b6a43
commit 259dbdbe04
28 changed files with 2463 additions and 885 deletions
@@ -32,8 +32,12 @@ export const pageDisplaySchemas = {
header_mobile_drawer: true,
header_nav_style: 'default',
header_max_width: 1200,
header_scroll_down_hide: false,
header_scroll_down_hide: true,
header_layout: '1',
header_nav_pay_vip: true,
header_nav_user_pay_vip: true,
header_newposts_types: ['post'],
header_user_newposts_text: '发布内容',
mobile_header_layout: 'center',
mobile_navbar_align: 'left',
header_newposts_enabled: true,
@@ -63,7 +67,7 @@ export const pageDisplaySchemas = {
{ label: '1200px', value: 1200 },
{ label: '1320px', value: 1320 },
]},
{ key: 'header_scroll_down_hide', label: '下滑隐藏导航', type: 'switch', default: false, help: '页面向下滑动时自动隐藏导航栏' },
{ key: 'header_scroll_down_hide', label: '下滑隐藏导航', type: 'switch', default: true, help: '下滚动隐藏,上滚动显示(需开启固定导航)' },
],
},
{
@@ -115,6 +119,14 @@ export const pageDisplaySchemas = {
{ key: 'header_newposts_text', label: '按钮文案', type: 'input', default: '<i class="fa fa-pencil"></i> 发布', dependsOn: { key: 'header_newposts_enabled', value: true } },
{ key: 'header_newposts_radius', label: '圆角 (px)', type: 'number', default: 20, min: 0, max: 30, dependsOn: { key: 'header_newposts_enabled', value: true } },
{ key: 'header_newposts_class', label: '自定义 CSS 类', type: 'input', default: '', dependsOn: { key: 'header_newposts_enabled', value: true } },
{ key: 'header_newposts_types', label: '发布类型', type: 'select', multiple: true, default: ['post'], options: [
{ label: '文章', value: 'post' },
{ label: '帖子', value: 'topic' },
{ label: '商品', value: 'product' },
], dependsOn: { key: 'header_newposts_enabled', value: true }, help: '未开启的模块不会显示' },
{ key: 'header_user_newposts_text', label: '用户卡发布文案', type: 'input', default: '发布内容' },
{ key: 'header_nav_pay_vip', label: '导航栏开通会员按钮', type: 'switch', default: true, help: '顶部导航显示开通会员' },
{ key: 'header_nav_user_pay_vip', label: '用户框开通会员按钮', type: 'switch', default: true },
],
},
{