-- ============================================================ -- 01_global_settings.sql -- 全局配置:站点基础信息、页脚、社交媒体、SEO 默认值、导航栏 -- 对应 proposal.md 第 1、2 节 -- ============================================================ -- ----------------------------------------------------------- -- 1.1 站点基础信息(单行记录) -- ----------------------------------------------------------- CREATE TABLE IF NOT EXISTS `www_site_settings` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `site_title` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '站点标题,全站 后缀', `favicon_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'Favicon 素材路径', `logo_dark_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'Logo 深色版(浅色区块上用)', `logo_light_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT 'Logo 浅色版(深色区块上用)', `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='站点基础信息(单行)'; -- ----------------------------------------------------------- -- 1.2 页脚配置(单行记录) -- ----------------------------------------------------------- CREATE TABLE IF NOT EXISTS `www_footer_settings` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `company_name` VARCHAR(200) NOT NULL DEFAULT '' COMMENT '公司名称', `company_address` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '公司地址', `contact_phone` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '联系电话', `contact_email` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '联系邮箱', `copyright_text` VARCHAR(200) NOT NULL DEFAULT '' COMMENT '版权信息', `icp_number` VARCHAR(50) NOT NULL DEFAULT '' COMMENT 'ICP 备案号', `police_number` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '公安备案号', `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='页脚配置(单行)'; -- ----------------------------------------------------------- -- 1.3 社交媒体链接 -- ----------------------------------------------------------- CREATE TABLE IF NOT EXISTS `www_social_links` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `platform` VARCHAR(30) NOT NULL COMMENT '平台标识: wechat / weibo / bilibili / youtube / facebook / instagram', `url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '主页链接(微信公众号时为空)', `qrcode_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '二维码图片路径(仅微信用)', `sort_order` INT NOT NULL DEFAULT 0 COMMENT '排序', PRIMARY KEY (`id`), UNIQUE KEY `uk_platform` (`platform`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='社交媒体链接'; -- ----------------------------------------------------------- -- 1.4 全站 SEO 默认值(单行记录) -- ----------------------------------------------------------- CREATE TABLE IF NOT EXISTS `www_seo_defaults` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `meta_description` VARCHAR(160) NOT NULL DEFAULT '' COMMENT '默认 Meta Description', `meta_keywords` VARCHAR(300) NOT NULL DEFAULT '' COMMENT '默认 Meta Keywords(逗号分隔)', `og_image_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '默认 OG 图片(1200×630px)', `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='全站 SEO 默认值(单行)'; -- ----------------------------------------------------------- -- 2.1 导航入口 -- ----------------------------------------------------------- CREATE TABLE IF NOT EXISTS `www_nav_items` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `name_zh` VARCHAR(50) NOT NULL COMMENT '入口名称(中文)', `name_en` VARCHAR(50) NOT NULL COMMENT '入口名称(英文)', `link` VARCHAR(500) NOT NULL COMMENT '链接地址(站内路由或外部 URL)', `is_visible` TINYINT(1) NOT NULL DEFAULT 1 COMMENT '是否显示', `sort_order` INT NOT NULL DEFAULT 0 COMMENT '排列顺序', `display_mode` VARCHAR(20) NOT NULL DEFAULT 'text' COMMENT '显示形式: text / icon_text / image / image_text', `icon_name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '图标名(display_mode 含 icon 时)', `image_url` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '图片路径(display_mode 含 image 时)', `open_new_tab` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否新窗口打开', `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='导航栏入口'; -- ----------------------------------------------------------- -- 2.3 导航栏外观配置(单行记录) -- ----------------------------------------------------------- CREATE TABLE IF NOT EXISTS `www_nav_appearance` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `homepage_style` VARCHAR(20) NOT NULL DEFAULT 'transparent' COMMENT '首页导航风格: transparent / glass', `non_homepage_style` VARCHAR(20) NOT NULL DEFAULT 'transparent' COMMENT '非首页导航风格: transparent / glass', `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='导航栏外观配置(单行)';