继续 Workstream C,集中处理 page_display 的结构性差异: - 把原本只是空壳的 `page_display.homepage` schema 补齐为真实契约层: 复用 HomepageSettings.vue 已在使用的字段(内容模型、主列表、首页 Tab、卡片样式、侧栏与交互), 不回退旧接口,直接围绕当前最新的 homepage settings 链路补 schema 契约。 - 新增 `page_display.float-btn` 前端 schema section,和 PHP 已存在的 float-btn section 对齐, 补齐五层中的前端 schema 缺口。 - page-display 路由配置中把 homepage 从 customPage 切回 schemaPage,并新增 float-btn 路由, 使 page_display 域不再存在“有 PHP section 但无前端 schema page”的断层。 - 对齐 Zibll 默认值:header_layout 从 2 收敛到 1。 - 为 header-components 的 slider_config 子字段补 PHP dependsOn,避免在未启用顶部多功能组件时 仍平铺暴露幻灯片参数。 验证: - php -l 通过:class-aksrt-admin-schema-page-display.php - node --check 通过:page-display/index.js / constants/sections/page-display.js - shim 校验确认:/page-display/homepage 与 /page-display/float-btn 现在都以 SchemaPage 形式挂接, canonicalDomain=page_display,section 分别为 homepage / float-btn Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
130 lines
4.2 KiB
JavaScript
130 lines
4.2 KiB
JavaScript
import { renderFaIcon, schemaPage, customPage } from './helpers'
|
|
|
|
export const pageDisplaySection = {
|
|
key: 'page-display',
|
|
label: '页面&显示',
|
|
icon: renderFaIcon('fas fa-desktop'),
|
|
route: '/page-display',
|
|
children: [
|
|
schemaPage({
|
|
key: 'page-display-header-nav',
|
|
name: 'PageDisplayHeaderNav',
|
|
label: '顶部导航栏',
|
|
route: '/page-display/header-nav',
|
|
title: '顶部导航栏',
|
|
desc: '导航栏布局、菜单位置、LOGO 与搜索入口配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'header-nav',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-background',
|
|
name: 'PageDisplayBackground',
|
|
label: '全局背景',
|
|
route: '/page-display/background',
|
|
title: '全局背景',
|
|
desc: '配置站点全局背景图、背景色、暗色模式背景和遮罩。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'background',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-menu-decoration',
|
|
name: 'PageDisplayMenuDecoration',
|
|
label: '菜单装饰',
|
|
route: '/page-display/menu-decoration',
|
|
title: '菜单装饰',
|
|
desc: '配置导航菜单的图标、徽章、下拉样式和图文卡片子菜单。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'menu-decoration',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-header-components',
|
|
name: 'PageDisplayHeaderComponents',
|
|
label: '顶部多功能组件',
|
|
route: '/page-display/header-components',
|
|
title: '顶部多功能组件',
|
|
desc: '顶部轮播、图标卡片、搜索条、公告条等组件配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'header-components',
|
|
}),
|
|
customPage({
|
|
key: 'page-display-footer',
|
|
name: 'PageDisplayFooter',
|
|
label: '底部页脚',
|
|
route: '/page-display/footer',
|
|
title: '底部页脚',
|
|
desc: '页脚布局、友链、版权信息配置。',
|
|
component: 'FooterSettings',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-homepage',
|
|
name: 'PageDisplayHomepage',
|
|
label: '首页配置',
|
|
route: '/page-display/homepage',
|
|
title: '首页配置',
|
|
desc: '首页内容模型、主列表、分类 Tab 与首页交互配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'homepage',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-float-btn',
|
|
name: 'PageDisplayFloatBtn',
|
|
label: '悬浮按钮',
|
|
route: '/page-display/float-btn',
|
|
title: '悬浮按钮',
|
|
desc: '悬浮按钮的显示规则、样式与滚动隐藏设置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'float-btn',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-category',
|
|
name: 'PageDisplayCategory',
|
|
label: '分类页面',
|
|
route: '/page-display/category',
|
|
title: '分类页面',
|
|
desc: '分类归档页的头图、简介、列表模式、侧栏配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'category',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-tag',
|
|
name: 'PageDisplayTag',
|
|
label: '标签页面',
|
|
route: '/page-display/tag',
|
|
title: '标签页面',
|
|
desc: '标签归档页的展示样式与配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'tag',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-special',
|
|
name: 'PageDisplaySpecial',
|
|
label: '专题页面',
|
|
route: '/page-display/special',
|
|
title: '专题页面',
|
|
desc: '配置专题聚合页的封面、摘要、布局、聚合规则和子页面展示策略。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'special',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-user-home',
|
|
name: 'PageDisplayUserHome',
|
|
label: '用户主页',
|
|
route: '/page-display/user-home',
|
|
title: '用户主页',
|
|
desc: '用户公开主页的布局与展示配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'user-home',
|
|
}),
|
|
schemaPage({
|
|
key: 'page-display-other',
|
|
name: 'PageDisplayOther',
|
|
label: '其它页面',
|
|
route: '/page-display/other',
|
|
title: '其它页面',
|
|
desc: '404 页面、搜索结果页等其它页面配置。',
|
|
canonicalDomain: 'page_display',
|
|
section: 'other',
|
|
}),
|
|
],
|
|
}
|