pro2-整理之前

This commit is contained in:
2026-04-27 17:16:17 +08:00
parent 541f2b9968
commit 47073425be
25 changed files with 384 additions and 567 deletions
+117
View File
@@ -0,0 +1,117 @@
# -*- coding: utf-8 -*-
# Data definitions for the Excel template generator
# Imported by generate_template.py
slides = [
(1, "product", "cat.png"),
(2, "product", "dog.jpeg"),
(3, "activity", None),
(4, "product", "feeder.png"),
(5, "notice", None),
(6, "product", "water.jpeg"),
(7, "activity", None),
(8, "product", "camera.jpeg"),
]
hp = [
("1", "cat.png", "智能猫厕所"),
("2", "dog.jpeg", "智能狗厕所"),
("3", "feeder.png", "智能喂食器"),
("4", "water.jpeg", "智能饮水机"),
("5", "camera.jpeg", "AI宠物摄像头"),
]
lp = [
("cat-toilet-pro", "智能猫厕所 Pro", "cat.png", "猫用,热销"),
("cat-toilet-lite", "智能猫厕所 Lite", "cat.png", "猫用,新品"),
("dog-toilet", "智能狗厕所", "dog.jpeg", "狗用"),
("smart-feeder", "智能喂食器", "feeder.png", "通用,热销"),
("smart-fountain", "智能饮水机", "water.jpeg", "通用"),
("cat-food-bucket", "智能猫粮桶", "cat.png", "猫用"),
("dog-food-bucket", "智能狗粮桶", "dog.jpeg", "狗用"),
("ai-camera", "AI宠物摄像头", "camera.jpeg", "通用,新品"),
("health-tracker", "宠物健康追踪器", "cat.png", "通用"),
("environment-monitor", "环境监测仪", "dog.jpeg", "通用"),
("filter-set", "替换滤网套装", "cat.png", "配件"),
("cleaning-kit", "清洁耗材包", "dog.jpeg", "配件"),
("power-adapter", "备用电源适配器", "cat.png", "配件"),
("extended-warranty", "延长保修服务", "dog.jpeg", "服务"),
]
sd = [
("story-1", "小橘的逆袭日记", "cat.png", "cat.png", "健康恢复", "橘猫", "小橘妈妈", "上海", "2024.03"),
("story-2", "旺财的健身日记", "dog.jpeg", "dog.jpeg", "体重管理", "金毛", "旺财爸爸", "北京", "2024.02"),
("story-3", "布丁的日常", "cat.png", "cat.png", "AI识别", "英短", "布丁姐姐", "深圳", "2024.01"),
("story-4", "豆豆的饮水日记", "dog.jpeg", "dog.jpeg", "饮水健康", "柯基", "豆豆妈妈", "杭州", "2024.01"),
("story-5", "咪咪的健康守护", "cat.png", "cat.png", "健康监测", "美短", "咪咪妈妈", "广州", "2023.12"),
("story-6", "大黄的如厕训练", "dog.jpeg", "dog.jpeg", "训练养成", "田园犬", "大黄爸爸", "成都", "2023.11"),
]
article_pages = [
("五、文章-公司介绍", "8B5CF6", [
("201", "关于Chookoo宠科", "公司简介需大幅扩充3-5段"),
("202", "我们的使命", "企业使命2-3段"),
("203", "热招职位", "真实职位/要求/待遇"),
("204", "A轮融资", "真实新闻稿"),
("205", "品牌起源", "品牌故事3-5段"),
], "全是占位需大幅扩充"),
("六、文章-合作伙伴", "F59E0B", [
("301", "经销商入驻", "入驻资格/流程/标准"),
("302", "经销商政策", "区域保护/价格/返利"),
("303", "推广联盟", "佣金/结算/素材"),
("304", "企业采购", "折扣/定制/流程"),
("305", "技术合作", "API/模式/流程"),
], "全是占位需大幅扩充"),
("七、文章-法律条款", "DC2626", [
("401", "隐私政策", "法务起草:数据收集/使用/存储/共享"),
("402", "服务条款", "法务起草:使用规范/免责/争议"),
("403", "Cookie说明", "类型/管理/第三方列表"),
], "全是占位需法务起草"),
]
app_fields = [
("APP-1", "Badge标签", "顶部标签", "", "全球独家", ""),
("APP-2", "主标题", "", "", "Chookoo App", ""),
("APP-3", "副标题", "核心描述", "", "AI宠物健康平台...", ""),
("APP-4", "核心标题", "", "", "AI宠物健康平台", ""),
("APP-5", "核心描述", "", "", "全球独家毫米波雷达...", ""),
("APP-6", "特性1标题", "", "", "毫米波雷达监测", ""),
("APP-7", "特性1描述", "", "", "24小时无感监测...", ""),
("APP-8", "特性2标题", "", "", "红外体温检测", ""),
("APP-9", "特性2描述", "", "", "精准红外测温...", ""),
("APP-10", "特性3标题", "", "", "AI健康预警", ""),
("APP-11", "特性3描述", "", "", "基于AI算法...", ""),
("APP-12", "特性4标题", "", "", "多设备生态联动", ""),
("APP-13", "特性4描述", "", "", "喂食器猫砂盆...", ""),
("APP-14", "数据:用户数", "确认真实性", "审核", "100万+", ""),
("APP-15", "数据:数据点", "确认真实性", "审核", "10亿+", ""),
("APP-16", "数据:国家数", "确认真实性", "审核", "30+", ""),
("APP-17", "数据:评分", "确认真实性", "审核", "4.9", ""),
("APP-18", "App Store", "实际URL", "", "(空)", ""),
("APP-19", "Google Play", "实际URL", "", "(空)", ""),
("APP-20", "APK链接", "安卓URL", "", "(空)", ""),
]
help_articles = [
("安装指导", "101|智能猫厕所安装指南"),
("安装指导", "102|智能饮水机安装指南"),
("安装指导", "103|智能喂食器安装指南"),
("安装指导", "104|WiFi配网教程"),
("安装指导", "105|指示灯状态说明"),
("智能猫厕所", "1|支持哪些猫砂"),
("智能猫厕所", "2|引导猫咪使用"),
("智能猫厕所", "3|设备离线"),
("智能猫厕所", "4|更换集便袋"),
("智能饮水机", "5|更换滤芯"),
("智能饮水机", "6|水泵噪音"),
("智能饮水机", "7|清洗饮水机"),
("智能喂食器", "8|出粮不准"),
("智能喂食器", "9|断网工作"),
("智能喂食器", "10|设置喂食计划"),
("APP使用", "11|注册账号"),
("APP使用", "12|添加设备"),
("APP使用", "13|分享设备"),
("其他问题", "14|保修政策"),
("其他问题", "15|联系售后"),
("其他问题", "16|购买渠道"),
]
+4
View File
@@ -0,0 +1,4 @@
import json, sys
sys.stdout.reconfigure(encoding="utf-8")
# This script reads generate_template.py and runs it
exec(open("generate_template.py", encoding="utf-8").read())
+1903
View File
File diff suppressed because it is too large Load Diff
+217
View File
@@ -0,0 +1,217 @@
# -*- coding: utf-8 -*-
"""
Chookoo 产品网站内容填写模板 - Excel 生成器
运行: python generate_template.py
输出: 产品网站内容填写模板.xlsx
"""
import sys
sys.stdout.reconfigure(encoding="utf-8")
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill, Alignment, Border, Side
from openpyxl.utils import get_column_letter
from _build_data import slides, hp, lp, sd, article_pages, app_fields, help_articles
wb = Workbook()
thin = Side(style="thin", color="CCCCCC")
bd = Border(left=thin, top=thin, right=thin, bottom=thin)
hf = Font(name="Microsoft YaHei", size=11, bold=True, color="FFFFFF")
hfl = PatternFill(start_color="2F6BFF", end_color="2F6BFF", fill_type="solid")
sf = Font(name="Microsoft YaHei", size=10, bold=True, color="FFFFFF")
sfl = PatternFill(start_color="4B5563", end_color="4B5563", fill_type="solid")
nf = Font(name="Microsoft YaHei", size=10)
bf = Font(name="Microsoft YaHei", size=10, bold=True)
xf = Font(name="Microsoft YaHei", size=10, color="888888")
rf = Font(name="Microsoft YaHei", size=10, color="DC2626", bold=True)
inp = PatternFill(start_color="FEF3C7", end_color="FEF3C7", fill_type="solid")
rev = PatternFill(start_color="DBEAFE", end_color="DBEAFE", fill_type="solid")
wa = Alignment(wrap_text=True, vertical="center", horizontal="left")
ca = Alignment(wrap_text=True, vertical="center", horizontal="center")
def hdr(ws, row, cols):
for c in range(1, cols+1):
cl = ws.cell(row=row, column=c); cl.font = hf; cl.fill = hfl; cl.alignment = ca; cl.border = bd
def sec(ws, row, cols, txt=""):
ws.merge_cells(start_row=row, start_column=1, end_row=row, end_column=cols)
cl = ws.cell(row=row, column=1, value=txt); cl.font = sf; cl.fill = sfl; cl.alignment = Alignment(vertical="center")
for c in range(1, cols+1): ws.cell(row=row, column=c).border = bd
def rw(ws, r, vals, fill_cols=None, ft="inp"):
for c, v in enumerate(vals, 1):
cl = ws.cell(row=r, column=c, value=v); cl.font = nf; cl.alignment = wa; cl.border = bd
if fill_cols and c in fill_cols: cl.fill = inp if ft == "inp" else rev
def sw(ws, widths):
for i, w in enumerate(widths, 1): ws.column_dimensions[get_column_letter(i)].width = w
# ========== Sheet 0: 填写说明 ==========
ws0 = wb.active; ws0.title = "填写说明"; ws0.sheet_properties.tabColor = "EF4444"
sw(ws0, [90, 70])
ws0.cell(row=1, column=1, value="Chookoo 产品网站 - 内容填写说明").font = Font(name="Microsoft YaHei", size=14, bold=True, color="2F6BFF")
info = [("", ""), ("颜色含义", ""), ("深黄底色", "必填 - 空着会导致网页显示异常"), ("浅蓝底色", "仅审核 - 已有内容需确认"),
("", ""), ("工作表说明", ""),
("一、轮播图", "首页8张轮播幻灯片(产品/活动/公告),中英文+图片"),
("二、产品卡片", "首页5张+列表页14张卡片,中英文标题/描述+图片"),
("三、产品详情", "14个产品详情页: 标签/亮点/特性/规格/图片"),
("四、宠物故事", "6个故事: 卡片摘要+详情页5段正文+3亮点+图片"),
("五、文章-公司介绍", "5篇(全是占位需大幅扩充)"),
("六、文章-合作伙伴", "5篇(全是占位需大幅扩充)"),
("七、文章-法律条款", "3篇(全是占位需法务起草)"),
("八、文章-App页面", "基本完成需审核数据+补充下载链接"),
("九、文章-帮助中心", "21篇已有详细文章仅审核确认"),
("", ""), ("图片尺寸速查", "")]
r = 3
for a, b in info:
ws0.cell(row=r, column=1, value=a).font = bf if a else nf
ws0.cell(row=r, column=2, value=b).font = nf; r += 1
iref = [("图片类型","建议源图尺寸","比例","格式","透明背景"),("轮播图主图","800x800px","1:1","PNG",""),
("轮播图角标","200x200px","1:1","PNG",""),("产品卡片图","400x400px","1:1","PNG",""),
("展示区大图","800x1000px","4:5","PNG",""),("详情页主图","800x800px","1:1","PNG",""),
("故事封面","800x450px","16:9","JPG",""),("故事头像","80x80px","1:1","JPG/PNG","否(圆形)"),
("二维码","240x240px","1:1","PNG","")]
for i, vals in enumerate(iref):
for c, v in enumerate(vals, 1):
cl = ws0.cell(row=r, column=c, value=v); cl.font = hf if i==0 else nf
if i==0: cl.fill = hfl
cl.border = bd; cl.alignment = wa
r += 1
# ========== Sheet 1: 轮播图 ==========
ws1 = wb.create_sheet("一、轮播图"); ws1.sheet_properties.tabColor = "06B6D4"
sw(ws1, [10, 22, 50, 8, 35, 35])
for c, h in enumerate(["编号","字段名","填写说明","必填","中文","英文"], 1): ws1.cell(row=1, column=c, value=h)
hdr(ws1, 1, 6); r = 2
for idx, stype, img in slides:
sec(ws1, r, 6, f"幻灯片{idx}(类型:{stype})"); r += 1
fields = [(f"S{idx}-1","类型","product/activity/notice","",stype,stype),
(f"S{idx}-2","中文主标题","产品名或活动标题","","",""),
(f"S{idx}-3","中文副标题","一句话卖点","","",""),
(f"S{idx}-4","英文主标题","English title","","",""),
(f"S{idx}-5","英文副标题","English subtitle","","","")]
if stype in ("activity","notice"):
fields += [(f"S{idx}-6","中文详情","活动/公告内容","","",""),(f"S{idx}-7","英文详情","English details","","","")]
for vals in fields: rw(ws1, r, vals, fill_cols={5,6}); r += 1
rw(ws1, r, [f"S{idx}-IMG","主图","800x800px PNG透明","","当前:",img or "(无)"])
ws1.cell(row=r, column=5).font = xf; r += 1; r += 1
# ========== Sheet 2: 产品卡片 ==========
ws2 = wb.create_sheet("二、产品卡片"); ws2.sheet_properties.tabColor = "10B981"
sw(ws2, [10, 18, 48, 8, 35, 35])
sec(ws2, 1, 6, "首页产品卡片(5张)"); r = 2
for c, h in enumerate(["编号","字段名","填写说明","必填","中文","英文"], 1): ws2.cell(row=r, column=c, value=h)
hdr(ws2, r, 6); r += 1
for pid, img, name in hp:
sec(ws2, r, 6, f"产品{pid}: {name}"); r += 1
for vals in [(f"HP{pid}-1","名称","不超过8字","",name,""),(f"HP{pid}-2","副标题","不超过20字","","",""),
(f"HP{pid}-3","特性1","不超过15字","","",""),(f"HP{pid}-4","特性2","不超过15字","","",""),
(f"HP{pid}-5","特性3","不超过15字","","",""),(f"HP{pid}-6","特性4","不超过15字","","","")]:
rw(ws2, r, vals, fill_cols={5,6}); r += 1
rw(ws2, r, [f"HP{pid}-IMG","图片","400x400px PNG","","当前:",img])
ws2.cell(row=r, column=5).font = xf; r += 2
sec(ws2, r, 6, "列表页卡片(14张)"); r += 1
for c, h in enumerate(["编号","字段名","填写说明","必填","中文","英文"], 1): ws2.cell(row=r, column=c, value=h)
hdr(ws2, r, 6); r += 1
for pid, name, img, tags in lp:
rw(ws2, r, [f"PL-{pid}","名称",pid,"",name,""], fill_cols={5,6}); r += 1
rw(ws2, r, [f"PL-{pid}D","描述","一句话","","",""], fill_cols={5,6}); r += 1
rw(ws2, r, [f"PL-{pid}T","标签","逗号分隔","",tags,""], fill_cols={5,6}); r += 1
rw(ws2, r, [f"PL-{pid}I","图片","400x400px PNG","","当前:",img])
ws2.cell(row=r, column=5).font = xf; r += 2
# ========== Sheet 3: 产品详情 ==========
ws3 = wb.create_sheet("三、产品详情"); ws3.sheet_properties.tabColor = "7C3AED"
sw(ws3, [10, 16, 42, 14, 28, 28])
for c, h in enumerate(["编号","字段名","填写说明","图标颜色","中文","英文"], 1): ws3.cell(row=1, column=c, value=h)
hdr(ws3, 1, 6); r = 2
for pid, name, img, tags in lp:
sec(ws3, r, 6, f"产品:{name}(ID:{pid})"); r += 1
rw(ws3, r, ["","标签","逗号分隔","","",tags,""], fill_cols={5,6}); r += 1
rw(ws3, r, ["","副标题","不超过25字","","",""], fill_cols={5,6}); r += 1
sec(ws3, r, 6, "亮点(4条)"); r += 1
for i in range(1,5): rw(ws3, r, [f"H{i}",f"亮点{i}","不超过15字","","",""], fill_cols={5,6}); r += 1
sec(ws3, r, 6, "特性(4组 blue=技术 green=环保 purple=智能 orange=安全)"); r += 1
for i in range(1,5):
rw(ws3, r, [f"F{i}","标题","不超过8字","填颜色","",""], fill_cols={4,5,6}); r += 1
rw(ws3, r, [f"F{i}d","描述","不超过25字","","",""], fill_cols={5,6}); r += 1
sec(ws3, r, 6, "规格表(行数不限)"); r += 1
for c, h in enumerate(["","参数名(中文)","参数名(英文)","","参数值",""], 1):
cl = ws3.cell(row=r, column=c, value=h); cl.font = bf
cl.fill = PatternFill(start_color="E5E7EB", end_color="E5E7EB", fill_type="solid"); cl.border = bd
r += 1
for _ in range(8): rw(ws3, r, ["","","","","",""], fill_cols={2,3,5}); r += 1
rw(ws3, r, ["","主图","800x800px PNG","","当前:",img])
ws3.cell(row=r, column=5).font = xf; r += 2
# ========== Sheet 4: 宠物故事 ==========
ws4 = wb.create_sheet("四、宠物故事"); ws4.sheet_properties.tabColor = "EA580C"
sw(ws4, [10, 18, 48, 8, 40, 40])
sec(ws4, 1, 6, "故事卡片(6个,首页随机3个)"); r = 2
for c, h in enumerate(["编号","字段名","填写说明","必填","中文","英文"], 1): ws4.cell(row=r, column=c, value=h)
hdr(ws4, r, 6); r += 1
for sid, title, img, av, cat, pet, auth, loc, date in sd:
sec(ws4, r, 6, f"故事:{title}"); r += 1
for vals in [(f"{sid}-1","标题","不超过12字","",title,""),(f"{sid}-2","摘要","2-3句不超过60字","","",""),
(f"{sid}-3","标签1","分类","",cat,""),(f"{sid}-4","标签2","可选","","",""),
(f"{sid}-5","作者","如:小橘妈妈","",auth,""),(f"{sid}-6","宠物","品种年龄","",pet+" · ","")]:
rw(ws4, r, vals, fill_cols={5,6}); r += 1
rw(ws4, r, [f"{sid}-IMG","封面图","800x450px JPG","","当前:",img])
ws4.cell(row=r, column=5).font = xf; r += 1
rw(ws4, r, [f"{sid}-AV","头像","80x80px","","当前:",av])
ws4.cell(row=r, column=5).font = xf; r += 2
sec(ws4, r, 6, "故事详情正文(每个5段+3亮点)"); r += 1
for c, h in enumerate(["编号","字段名","填写说明","必填","中文","英文"], 1): ws4.cell(row=r, column=c, value=h)
hdr(ws4, r, 6); r += 1
for sid, title, img, av, cat, pet, auth, loc, date in sd:
sec(ws4, r, 6, f"正文:{title}"); r += 1
rw(ws4, r, [f"{sid}-CAT","分类","","",cat,""], fill_cols={5,6}); r += 1
rw(ws4, r, [f"{sid}-LOC","地点","城市","",loc,""], fill_cols={5,6}); r += 1
rw(ws4, r, [f"{sid}-DATE","日期","如2024.03","",date,""], fill_cols={5,6}); r += 1
for i in range(1,6):
rw(ws4, r, [f"{sid}-P{i}",f"{i}","3-5句话","","",""], fill_cols={5,6}); r += 1
sec(ws4, r, 6, "核心亮点(3条)"); r += 1
for i in range(1,4): rw(ws4, r, [f"{sid}-HL{i}",f"亮点{i}","一句话","","",""], fill_cols={5,6}); r += 1
r += 1
# ========== Sheet 5-7: 文章系统 ==========
for st, color, articles, warn in article_pages:
ws = wb.create_sheet(st); ws.sheet_properties.tabColor = color; sw(ws, [10, 20, 48, 8, 55, 55])
for c, h in enumerate(["编号","字段名","填写说明","必填","中文","英文"], 1): ws.cell(row=1, column=c, value=h)
hdr(ws, 1, 6)
ws.merge_cells(start_row=2, start_column=1, end_row=2, end_column=6)
ws.cell(row=2, column=1, value="注意: "+warn).font = rf; r = 3
for aid, atitle, adesc in articles:
sec(ws, r, 6, f"文章{aid}:{atitle}"); r += 1
rw(ws, r, [f"A{aid}-1","标题","","",atitle,""], fill_cols={5,6}); r += 1
for i in range(1,6):
rw(ws, r, [f"A{aid}-P{i}",f"{i}",adesc if i==1 else "3-5句话","","",""], fill_cols={5,6}); r += 1
r += 1
# ========== Sheet 8: App ==========
ws8 = wb.create_sheet("八、文章-App页面"); ws8.sheet_properties.tabColor = "3B82F6"
sw(ws8, [10, 22, 48, 8, 40, 40])
for c, h in enumerate(["编号","字段名","填写说明","必填","当前内容","需确认"], 1): ws8.cell(row=1, column=c, value=h)
hdr(ws8, 1, 6); r = 2
sec(ws8, r, 6, "App文案(基本完成请审核)"); r += 1
for vals in app_fields:
ft = "rev" if "审核" in str(vals[3]) else "inp"
fc = {6} if "审核" in str(vals[3]) else {6}
rw(ws8, r, vals, fill_cols=fc, ft=ft); r += 1
# ========== Sheet 9: 帮助中心 ==========
ws9 = wb.create_sheet("九、文章-帮助中心"); ws9.sheet_properties.tabColor = "64748B"
sw(ws9, [10, 14, 42, 8, 55])
for c, h in enumerate(["编号","分类","标题","状态","审核确认"], 1): ws9.cell(row=1, column=c, value=h)
hdr(ws9, 1, 5); r = 2
sec(ws9, r, 5, "21篇已有详细文章仅需审核确认"); r += 1
for cat, info in help_articles:
aid, atitle = info.split("|")
rw(ws9, r, [aid, cat, atitle, "已有详细内容", ""], fill_cols={5}, ft="rev"); r += 1
# ========== 保存 ==========
for ws in wb.worksheets:
ws.freeze_panes = "A2"; ws.row_dimensions[1].height = 28
wb.move_sheet("填写说明", offset=-(len(wb.sheetnames)-1))
output = "产品网站内容填写模板.xlsx"
wb.save(output)
print(f"OK - {output}")
print(f"Sheets ({len(wb.sheetnames)}): {', '.join(wb.sheetnames)}")
+48
View File
@@ -0,0 +1,48 @@
# 文章管理后台改造方案(最小改动)
## 改动内容
### 1. 后台改名
- `help-admin.html``admin.html`
- 页面标题改为「文章管理后台」
### 2. 后台新增字段
在现有分类基础上,给文章增加 `pageType` 字段:
- `help` - 帮助中心(默认)
- `company` - 公司介绍
- `partner` - 合作伙伴
- `legal` - 法律条款
### 3. 新建3个页面模板
复用 `help.html` 的样式和逻辑,只是筛选不同的 `pageType`
- `company.html` - 公司页面(关于我们、加入我们、新闻、品牌故事)
- `partner.html` - 合作伙伴(经销商、联盟、企业采购、技术合作)
- `legal.html` - 法律条款(隐私政策、服务条款、Cookie)
### 4. 更新首页链接
| 按钮 | 链接 |
|------|------|
| 关于我们 | `company.html?page=about` |
| 加入我们 | `company.html?page=careers` |
| 新闻动态 | `company.html?page=news` |
| 品牌故事 | `company.html?page=brand` |
| 经销商入驻 | `partner.html?page=dealer` |
| 联盟推广 | `partner.html?page=affiliate` |
| 企业采购 | `partner.html?page=business` |
| 技术合作 | `partner.html?page=tech` |
| 隐私政策 | `legal.html?page=privacy` |
| 服务条款 | `legal.html?page=terms` |
| Cookie设置 | `legal.html?page=cookies` |
---
## 代码复用
- ✅ 复用现有文章数据结构
- ✅ 复用现有后台管理功能
- ✅ 复用 help.html 的样式和渲染逻辑
- ✅ 只需增加 pageType 筛选
---
## 确认开始?
+430
View File
@@ -0,0 +1,430 @@
# Chookoo 产品网站 — 内容填写模板
> **使用说明**
> 1. 本文档列出网站上所有需要填写的内容字段,请逐项填写。
> 2. 所有文字内容需要 **中文** 和 **英文** 两个版本。
> 3. 图片请提供源文件,并按要求的尺寸和命名规范提交。
> 4. 填写完成后,将本文档和所有图片一起交给开发人员,我们会直接替换到网站上。
> 5. 标有 **必填** 的字段为空则网页会显示异常,请务必填写。
---
## 一、品牌基础信息
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| B1 | 品牌Slogan | 首页顶部标语,不超过15个字 | 是 | | |
| B2 | 品牌介绍第1段 | "关于我们"区域的品牌故事第1段,3-5句话 | 是 | | |
| B3 | 品牌介绍第2段 | 品牌故事第2段,3-5句话 | 否 | | |
| B4 | 品牌介绍第3段 | 品牌故事第3段,1-2句总结性语句 | 否 | | |
| B5 | 品牌理念关键词 | 3-4个关键词,用逗号分隔,如:科技,关爱,智能,守护 | 是 | | |
| B6 | 联系电话 | 客服电话号码 | 是 | | |
| B7 | 联系邮箱 | 客服邮箱地址 | 是 | | |
| B8 | 公司地址 | 公司详细地址 | 是 | | |
| B9 | 公司名称 | 用于页脚版权声明 | 是 | | |
### 品牌相关图片
| 编号 | 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名(请使用此命名) |
|------|----------|----------|------|------|------------------------|
| BI1 | 网站Logo(导航栏) | **高度不低于 100px**,宽度自适应,背景透明 | PNG | 用于顶部导航栏和关于我们区域,深色背景上要清晰可见 | `logo.png` |
| BI2 | 网站Logo(白色版) | **高度不低于 100px**,宽度自适应,背景透明 | PNG | 白色文字版本,用于深色页脚区域 | `白字logo.png` |
| BI3 | 首页Hero背景图 | **3640 × 2048 px** 或同比例(16:9 横向) | JPG | 首页顶部全屏背景图,图片会铺满整个屏幕,重要内容请放在中间区域 | `hero.jpeg` |
---
## 二、轮播图(首页主展示区)
> 网站首页主展示区有 **5张** 轮播幻灯片,每张展示一个产品或活动。
> 请为每张幻灯片填写以下信息。
### 幻灯片 1
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| S1-1 | 幻灯片类型 | 填 `product`(产品展示)或 `activity`(活动)或 `notice`(公告) | 是 | | |
| S1-2 | 产品主标题 | 如果类型是product,填产品名称;如果是activity/notice,填活动/公告标题 | 是 | | |
| S1-3 | 产品副标题 | 一句话描述产品核心卖点,不超过20字 | 是 | | |
| S1-4 | 活动公告内容 | 仅当类型为activity/notice时填写,1-2句详情 | 否 | | |
**幻灯片1图片:**
| 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名 |
|----------|----------|------|------|--------|
| 产品主图 | **800 × 800 px**(正方形)或 **800 × 1000 px**(竖版),背景透明 | PNG | 产品主体图片,会居中显示在卡片中 | `slide-1-product.png` |
| 角标小图(可选) | **200 × 200 px**(正方形),背景透明 | PNG | 右上角圆形小图标,如关联产品缩略图 | `slide-1-badge.png` |
---
### 幻灯片 2
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| S2-1 | 幻灯片类型 | 同上 | 是 | | |
| S2-2 | 产品主标题 | 同上 | 是 | | |
| S2-3 | 产品副标题 | 同上 | 是 | | |
| S2-4 | 活动公告内容 | 同上 | 否 | | |
**幻灯片2图片:**
| 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名 |
|----------|----------|------|------|--------|
| 产品主图 | 同上 | PNG | | `slide-2-product.png` |
| 角标小图(可选) | 同上 | PNG | | `slide-2-badge.png` |
---
### 幻灯片 3
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| S3-1 | 幻灯片类型 | 同上 | 是 | | |
| S3-2 | 产品主标题 | 同上 | 是 | | |
| S3-3 | 产品副标题 | 同上 | 是 | | |
| S3-4 | 活动公告内容 | 同上 | 否 | | |
**幻灯片3图片:**
| 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名 |
|----------|----------|------|------|--------|
| 产品主图 | 同上 | PNG | | `slide-3-product.png` |
| 角标小图(可选) | 同上 | PNG | | `slide-3-badge.png` |
---
### 幻灯片 4
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| S4-1 | 幻灯片类型 | 同上 | 是 | | |
| S4-2 | 产品主标题 | 同上 | 是 | | |
| S4-3 | 产品副标题 | 同上 | 是 | | |
| S4-4 | 活动公告内容 | 同上 | 否 | | |
**幻灯片4图片:**
| 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名 |
|----------|----------|------|------|--------|
| 产品主图 | 同上 | PNG | | `slide-4-product.png` |
| 角标小图(可选) | 同上 | PNG | | `slide-4-badge.png` |
---
### 幻灯片 5
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| S5-1 | 幻灯片类型 | 同上 | 是 | | |
| S5-2 | 产品主标题 | 同上 | 是 | | |
| S5-3 | 产品副标题 | 同上 | 是 | | |
| S5-4 | 活动公告内容 | 同上 | 否 | | |
**幻灯片5图片:**
| 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名 |
|----------|----------|------|------|--------|
| 产品主图 | 同上 | PNG | | `slide-5-product.png` |
| 角标小图(可选) | 同上 | PNG | | `slide-5-badge.png` |
---
## 三、产品卡片(首页底部产品列表)
> 首页底部展示 **5张** 产品卡片,横向排列,可滚动。点击卡片后上方展示区会显示该产品的详细信息。
### 产品卡片公共图片要求
| 图片用途 | 尺寸要求 | 格式 | 说明 |
|----------|----------|------|------|
| 产品卡片缩略图 | **400 × 400 px**(正方形),背景透明 | PNG | 用于卡片上的小缩略图,会被裁剪显示在 **175 × 90 px** 的区域内 |
| 产品展示区大图 | **800 × 1000 px**(竖版)或 **800 × 800 px**(正方形),背景透明 | PNG | 用于点击卡片后在上方展示区显示的大图,会被显示在 **400 × 220 px** 的区域内 |
---
### 产品卡片 1
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| C1-1 | 产品ID | 英文唯一标识符,只能用小写字母、数字和连字符,如 `cat-toilet-pro` | 是 | | — |
| C1-2 | 适用宠物 | 填 `cat`(猫)、`dog`(狗)或 `both`(通用) | 是 | | — |
| C1-3 | 产品名称 | 卡片上显示的产品名称,不超过8个字 | 是 | | |
| C1-4 | 产品副标题 | 卡片上一句话描述,不超过15个字 | 是 | | |
| C1-5 | 展示区副标题 | 点击后上方展示区的详细描述,2-3句话 | 是 | | |
| C1-6 | 特性1 | 展示区产品特性,每条不超过15字 | 是 | | |
| C1-7 | 特性2 | 同上 | 是 | | |
| C1-8 | 特性3 | 同上 | 是 | | |
| C1-9 | 特性4 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 卡片缩略图 | `product-1-thumb.png` |
| 展示区大图 | `product-1-display.png` |
---
### 产品卡片 2
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| C2-1 | 产品ID | 同上 | 是 | | — |
| C2-2 | 适用宠物 | 同上 | 是 | | — |
| C2-3 | 产品名称 | 同上 | 是 | | |
| C2-4 | 产品副标题 | 同上 | 是 | | |
| C2-5 | 展示区副标题 | 同上 | 是 | | |
| C2-6 | 特性1 | 同上 | 是 | | |
| C2-7 | 特性2 | 同上 | 是 | | |
| C2-8 | 特性3 | 同上 | 是 | | |
| C2-9 | 特性4 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 卡片缩略图 | `product-2-thumb.png` |
| 展示区大图 | `product-2-display.png` |
---
### 产品卡片 3
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| C3-1 | 产品ID | 同上 | 是 | | — |
| C3-2 | 适用宠物 | 同上 | 是 | | — |
| C3-3 | 产品名称 | 同上 | 是 | | |
| C3-4 | 产品副标题 | 同上 | 是 | | |
| C3-5 | 展示区副标题 | 同上 | 是 | | |
| C3-6 | 特性1 | 同上 | 是 | | |
| C3-7 | 特性2 | 同上 | 是 | | |
| C3-8 | 特性3 | 同上 | 是 | | |
| C3-9 | 特性4 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 卡片缩略图 | `product-3-thumb.png` |
| 展示区大图 | `product-3-display.png` |
---
### 产品卡片 4
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| C4-1 | 产品ID | 同上 | 是 | | — |
| C4-2 | 适用宠物 | 同上 | 是 | | — |
| C4-3 | 产品名称 | 同上 | 是 | | |
| C4-4 | 产品副标题 | 同上 | 是 | | |
| C4-5 | 展示区副标题 | 同上 | 是 | | |
| C4-6 | 特性1 | 同上 | 是 | | |
| C4-7 | 特性2 | 同上 | 是 | | |
| C4-8 | 特性3 | 同上 | 是 | | |
| C4-9 | 特性4 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 卡片缩略图 | `product-4-thumb.png` |
| 展示区大图 | `product-4-display.png` |
---
### 产品卡片 5
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| C5-1 | 产品ID | 同上 | 是 | | — |
| C5-2 | 适用宠物 | 同上 | 是 | | — |
| C5-3 | 产品名称 | 同上 | 是 | | |
| C5-4 | 产品副标题 | 同上 | 是 | | |
| C5-5 | 展示区副标题 | 同上 | 是 | | |
| C5-6 | 特性1 | 同上 | 是 | | |
| C5-7 | 特性2 | 同上 | 是 | | |
| C5-8 | 特性3 | 同上 | 是 | | |
| C5-9 | 特性4 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 卡片缩略图 | `product-5-thumb.png` |
| 展示区大图 | `product-5-display.png` |
---
## 四、产品详情页
> 以下信息会显示在点击"了解更多"后跳转的产品详情页。
> 产品ID必须与上面"产品卡片"中的ID一致。
> 目前网站支持最多 **14个** 产品详情页。
### 每个产品需要填写的内容模板
> 请复制以下模板,每个产品填一份。
#### 产品:___________(产品ID___________
**基本信息:**
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| D-1 | 产品标签 | 1-3个标签,用逗号分隔。可选标签类型:猫用/狗用/通用/热销/新品/配件/服务。英文对应:For Cats / For Dogs / Universal / Bestseller / New / Accessory / Service | 是 | | |
| D-2 | 产品副标题 | 详情页顶部的一句产品描述,不超过25字 | 是 | | |
**产品亮点(4条):**
| 编号 | 填写说明 | 必填 | 中文内容 | 英文内容 |
|------|----------|------|----------|----------|
| D-H1 | 第1个亮点,如"毫米波雷达监测心率呼吸",不超过15字 | 是 | | |
| D-H2 | 第2个亮点 | 是 | | |
| D-H3 | 第3个亮点 | 是 | | |
| D-H4 | 第4个亮点 | 是 | | |
**产品特性(4组):**
> 每组特性包含:图标颜色、标题、描述文字。图标颜色只能从以下4种中选择一种:
> - `blue`(蓝色 — 适合技术/监测类特性)
> - `green`(绿色 — 适合环保/清洁类特性)
> - `purple`(紫色 — 适合智能/APP类特性)
> - `orange`(橙色 — 适合安全/保障类特性)
| 编号 | 图标颜色 | 标题(中文) | 标题(英文) | 描述(中文,不超过25字) | 描述(英文) |
|------|----------|-------------|-------------|-------------------------|-------------|
| D-F1 | blue/green/purple/orange | | | | |
| D-F2 | blue/green/purple/orange | | | | |
| D-F3 | blue/green/purple/orange | | | | |
| D-F4 | blue/green/purple/orange | | | | |
**产品规格表:**
> 规格行数不限,按实际产品参数填写。每行包含:参数名称(中英文)、参数值。
| 参数名称(中文) | 参数名称(英文) | 参数值 |
|-----------------|-----------------|--------|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
**产品图片:**
| 图片用途 | 尺寸要求 | 格式 | 说明 | 文件名 |
|----------|----------|------|------|--------|
| 产品主图 | **800 × 800 px**(正方形),背景透明 | PNG | 详情页左侧大图展示,区域为正方形 | `detail-{产品ID}-main.png` |
| 缩略图(可选) | **160 × 160 px**(正方形),背景透明 | PNG | 主图下方的小缩略图,如有多角度视图可提供多张 | `detail-{产品ID}-thumb-1.png` |
---
## 五、宠物故事(首页故事卡片)
> 首页底部展示 **3条** 宠物故事卡片。
### 故事卡片图片要求
| 图片用途 | 尺寸要求 | 格式 | 说明 |
|----------|----------|------|------|
| 故事封面图 | **600 × 400 px**3:2 横向),或 **800 × 450 px**16:9 横向) | JPG | 故事卡片的封面图片,显示在 **宽度自适应 × 220px** 高的区域内 |
| 作者头像 | **80 × 80 px**(正方形) | JPG/PNG | 圆形头像,显示为 **36 × 36 px** 的圆形 |
---
### 故事 1
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| ST1-1 | 故事标题 | 不超过12个字 | 是 | | |
| ST1-2 | 故事摘要 | 2-3句话的简介,不超过50字 | 是 | | |
| ST1-3 | 标签1 | 故事分类标签,如:健康恢复、AI识别、暖心故事 | 是 | | |
| ST1-4 | 标签2 | 同上 | 否 | | |
| ST1-5 | 作者昵称 | 如"小橘妈妈" | 是 | | |
| ST1-6 | 宠物信息 | 品种和年龄,如"橘猫 · 3岁" | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 故事封面图 | `story-1-cover.jpg` |
| 作者头像 | `story-1-avatar.jpg` |
---
### 故事 2
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| ST2-1 | 故事标题 | 不超过12个字 | 是 | | |
| ST2-2 | 故事摘要 | 2-3句话,不超过50字 | 是 | | |
| ST2-3 | 标签1 | 同上 | 是 | | |
| ST2-4 | 标签2 | 同上 | 否 | | |
| ST2-5 | 作者昵称 | 同上 | 是 | | |
| ST2-6 | 宠物信息 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 故事封面图 | `story-2-cover.jpg` |
| 作者头像 | `story-2-avatar.jpg` |
---
### 故事 3
| 编号 | 字段名 | 填写说明 | 必填 | 填写内容(中文) | 填写内容(英文) |
|------|--------|----------|------|------------------|------------------|
| ST3-1 | 故事标题 | 不超过12个字 | 是 | | |
| ST3-2 | 故事摘要 | 2-3句话,不超过50字 | 是 | | |
| ST3-3 | 标签1 | 同上 | 是 | | |
| ST3-4 | 标签2 | 同上 | 否 | | |
| ST3-5 | 作者昵称 | 同上 | 是 | | |
| ST3-6 | 宠物信息 | 同上 | 是 | | |
| 图片 | 文件名 |
|------|--------|
| 故事封面图 | `story-3-cover.jpg` |
| 作者头像 | `story-3-avatar.jpg` |
---
## 六、二维码图片
> 以下二维码图片用于页脚和弹窗中展示。
| 编号 | 二维码用途 | 显示尺寸 | 建议源图尺寸 | 格式 | 说明 | 文件名 |
|------|-----------|----------|-------------|------|------|--------|
| QR1 | 微信公众号 | 80×80px(页脚)/ 120×120px(弹窗) | **240 × 240 px** | PNG | 微信公众号二维码 | `qr-wechat.png` |
| QR2 | 微博 | 同上 | **240 × 240 px** | PNG | 微博二维码 | `qr-weibo.png` |
| QR3 | 小红书 | 同上 | **240 × 240 px** | PNG | 小红书二维码 | `qr-xiaohongshu.png` |
| QR4 | 抖音/TikTok | 同上 | **240 × 240 px** | PNG | 抖音二维码 | `qr-tiktok.png` |
| QR5 | 在线商城 | 160×160px(弹窗) | **320 × 320 px** | PNG | 在线商城/店铺二维码 | `qr-shop.png` |
| QR6 | 联系咨询 | 160×160px(弹窗) | **320 × 320 px** | PNG | 客服/咨询二维码 | `qr-contact.png` |
| QR7 | 视频号 | 120×120px(弹窗) | **240 × 240 px** | PNG | 视频号二维码 | `qr-video.png` |
| QR8 | 抖音(故事页) | 120×120px(弹窗) | **240 × 240 px** | PNG | 抖音二维码(故事页专用) | `qr-douyin.png` |
---
## 七、图片尺寸汇总速查表
| 图片类型 | 建议源图尺寸 | 比例 | 格式 | 是否需要透明背景 |
|----------|-------------|------|------|----------------|
| 导航栏Logo | 高度 ≥ 100px,宽度自适应 | 自由 | PNG | **是** |
| 白色版Logo | 高度 ≥ 100px,宽度自适应 | 自由 | PNG | **是**(白色文字) |
| Hero背景图 | **3640 × 2048 px** | 16:9 | JPG | 否 |
| 轮播图产品主图 | **800 × 800 px** | 1:1 | PNG | **是** |
| 轮播图角标小图 | **200 × 200 px** | 1:1 | PNG | **是** |
| 产品卡片缩略图 | **400 × 400 px** | 1:1 | PNG | **是** |
| 产品展示区大图 | **800 × 1000 px** | 4:5 | PNG | **是** |
| 详情页产品主图 | **800 × 800 px** | 1:1 | PNG | **是** |
| 详情页缩略图 | **160 × 160 px** | 1:1 | PNG | **是** |
| 故事封面图 | **800 × 450 px** | 16:9 | JPG | 否 |
| 故事作者头像 | **80 × 80 px** | 1:1 | JPG/PNG | 否(圆形裁剪) |
| 二维码(页脚) | **240 × 240 px** | 1:1 | PNG | 否 |
| 二维码(弹窗大图) | **320 × 320 px** | 1:1 | PNG | 否 |
---
## 八、填写检查清单
填写完成后,请对照以下清单自查:
- [ ] 品牌基础信息(B1-B9)全部已填写
- [ ] 5张轮播幻灯片(S1-S5)内容已填写
- [ ] 5张产品卡片(C1-C5)内容已填写
- [ ] 每个产品的详情页信息(D系列)已填写
- [ ] 3条宠物故事(ST1-ST3)内容已填写
- [ ] 所有需要的中英文双语内容都已填写
- [ ] 所有图片已按要求的尺寸和格式准备好
- [ ] 图片文件名与模板中指定的文件名一致
- [ ] 二维码图片(QR1-QR8)已准备(如暂无可后续补充)
Binary file not shown.
Binary file not shown.