-- ============================================================= -- cms_website_setting 扩展列:首页「优势模块」配置 -- -- 背景: -- 前台 website-template 的 FeatureSection(我们的优势/核心业务卡片区) -- 原为各模板硬编码。现改为后台可配置:标题、副标题、最多 4 张卡片 -- (标题/描述/图标名)。配置存于 cms_website_setting.features(JSON 字符串)。 -- -- 注意:cms_website.setting 是 @TableField(exist=false) 的 transient 字段, -- 走 PUT /api/cms/cms-website 写不进库;故必须用 cms_website_setting 表。 -- -- 前端读取路径: -- GET /api/site/info → /cms/cms-website/getSiteInfo -- 后端需把 cms_website_setting.features 合并进返回体的 setting 字段 -- (与 searchBtn / loginBtn 等现有开关同口径),前台 useFeatures() 解析。 -- ============================================================= ALTER TABLE cms_website_setting ADD COLUMN features TEXT NULL COMMENT '首页优势模块配置(JSON): {enabled,title,subtitle,items:[{title,desc,icon}]}'; -- 兼容回填(可选):若老数据曾存进 cms_website.setting 的 features,可迁移: -- UPDATE cms_website_setting s -- JOIN cms_website w ON s.website_id = w.website_id -- SET s.features = JSON_UNQUOTE(JSON_EXTRACT(w.setting, '$.features')) -- WHERE JSON_EXTRACT(w.setting, '$.features') IS NOT NULL;