feat: scope articles by brand
This commit is contained in:
@@ -101,7 +101,7 @@ const zhCN = {
|
||||
email: "邮箱",
|
||||
loginIdentifier: "手机号 / 邮箱",
|
||||
password: "密码",
|
||||
rememberAccount: "记住账号",
|
||||
rememberAccount: "记住账号和密码",
|
||||
forgotPassword: "忘记密码",
|
||||
},
|
||||
membershipBlocked: {
|
||||
@@ -134,6 +134,9 @@ const zhCN = {
|
||||
userFallback: "管理员",
|
||||
logout: "退出",
|
||||
planFallback: "免费版",
|
||||
currentCompany: "当前公司",
|
||||
currentCompanyPlaceholder: "选择公司",
|
||||
createCompany: "创建公司",
|
||||
openNavigation: "打开导航",
|
||||
collapseNavigation: "收起导航",
|
||||
expandNavigation: "展开导航",
|
||||
@@ -165,6 +168,10 @@ const zhCN = {
|
||||
title: "欢迎回来",
|
||||
description: "登录省心推,开启品牌内容创作之旅",
|
||||
},
|
||||
brandOnboarding: {
|
||||
title: "选择进入的品牌",
|
||||
description: "首次进入前创建品牌,并初始化品牌关键词库。",
|
||||
},
|
||||
workspace: {
|
||||
title: "工作台",
|
||||
description: "模板入口、数据总览和最近生成都集中在这里。",
|
||||
@@ -238,6 +245,45 @@ const zhCN = {
|
||||
description: "你访问的链接可能已经失效或被移动。",
|
||||
},
|
||||
},
|
||||
onboardingBrand: {
|
||||
eyebrow: "Brand Onboarding",
|
||||
title: "选择进入的品牌或公司",
|
||||
subtitle: "你拥有多个品牌或公司的访问权限,请选择一个开始工作",
|
||||
createBrand: "创建新品牌或公司",
|
||||
createHint: "添加品牌或公司后会自动进入关键词初始化。",
|
||||
emptyDescription: "新用户需要先创建品牌或公司,再进入工作台开始创作。",
|
||||
noWebsite: "暂未填写官网",
|
||||
form: {
|
||||
title: "新建品牌或公司",
|
||||
name: "品牌或公司名",
|
||||
namePlaceholder: "例如:省心推 / 海翔家具",
|
||||
website: "官网(选填)",
|
||||
websitePlaceholder: "https://example.com",
|
||||
description: "简介",
|
||||
descriptionPlaceholder: "简单介绍公司的业务、产品、服务区域或核心卖点",
|
||||
},
|
||||
ai: {
|
||||
title: "正在生成品牌或公司问题",
|
||||
stages: {
|
||||
fetch: "正在获取官网信息和业务上下文…",
|
||||
generate: "正在生成适合监测的候选搜索词…",
|
||||
refine: "正在去重并筛选可保存的问题…",
|
||||
},
|
||||
},
|
||||
questions: {
|
||||
title: "选择品牌或公司问题",
|
||||
subtitle: "请选择最多 {limit} 个问题保存到关键词库,后续可继续添加或调整。",
|
||||
confirm: "保存并进入工作台",
|
||||
skip: "跳过,直接进入",
|
||||
empty: "暂时没有生成可用的问题,可以先进入工作台后手动添加。",
|
||||
selectionLimit: "最多选择 {limit} 个问题",
|
||||
},
|
||||
messages: {
|
||||
nameRequired: "请输入品牌或公司名",
|
||||
questionRequired: "请至少选择 1 个问题,或跳过后手动添加",
|
||||
aiCharged: "本次生成已消耗 {count} 个 AI 点",
|
||||
},
|
||||
},
|
||||
notFound: {
|
||||
title: "页面走丢了",
|
||||
description: "我们没有找到这个地址对应的内容,可能链接拼写有误,或者页面已经下线。",
|
||||
@@ -691,7 +737,7 @@ const zhCN = {
|
||||
sourceURL: "文章 URL",
|
||||
sourceTitle: "来源标题",
|
||||
language: "文章语言",
|
||||
brandName: "品牌/主体",
|
||||
brandName: "当前公司",
|
||||
region: "地域",
|
||||
keywords: "优化关键词",
|
||||
preservePoints: "必须保留/强调",
|
||||
@@ -704,15 +750,15 @@ const zhCN = {
|
||||
knowledgeBaseHint: "选择后,后台会检索相关知识片段并作为生成参考,未选择则只基于来源文章和当前设置生成。",
|
||||
sourceURLPlaceholder: "https://example.com/article",
|
||||
sourceTitlePlaceholder: "可选,引用来源标题会自动带入",
|
||||
brandNamePlaceholder: "必填,可输入目标达成词,或从品牌库选择",
|
||||
brandNamePlaceholder: "请先在顶部选择当前公司",
|
||||
regionPlaceholder: "例如:上海、华东、全国、北美市场",
|
||||
keywordsPlaceholder: "输入优化关键词后回车,可多选;选择品牌库主体后会显示搜索词候选",
|
||||
keywordsPlaceholder: "输入优化关键词后回车,可多选;选择当前公司后会显示搜索词候选",
|
||||
preservePointsPlaceholder: "列出必须保留的事实、数据、观点或案例",
|
||||
avoidPointsPlaceholder: "列出不能出现的说法、竞品、合规禁区或表达方式",
|
||||
extraRequirementsPlaceholder: "补充行业、渠道、结构、标题风格等自由要求",
|
||||
queued: "仿写任务已提交,正在排队生成",
|
||||
sourceURLRequired: "请先填写来源文章 URL",
|
||||
brandNameRequired: "请先填写品牌/主体",
|
||||
brandNameRequired: "请先在顶部选择当前公司",
|
||||
submitError: "仿写任务提交失败",
|
||||
backToList: "返回仿写列表",
|
||||
},
|
||||
@@ -785,7 +831,7 @@ const zhCN = {
|
||||
drawerTitle: "模版生成",
|
||||
steps: {
|
||||
basic: "基本信息",
|
||||
basicDesc: "语言、模版字段与品牌上下文",
|
||||
basicDesc: "语言、模版字段与公司上下文",
|
||||
structure: "文章结构",
|
||||
structureDesc: "标题方案与结构段落",
|
||||
generate: "生成文章",
|
||||
@@ -793,13 +839,13 @@ const zhCN = {
|
||||
},
|
||||
sections: {
|
||||
templateFields: "模版字段",
|
||||
brandContext: "品牌上下文",
|
||||
brandContext: "公司上下文",
|
||||
language: "文章语言",
|
||||
brandInfo: "品牌信息",
|
||||
brandLibrary: "品牌库",
|
||||
brandName: "公司名称",
|
||||
brandInfo: "公司信息",
|
||||
brandLibrary: "公司库",
|
||||
brandName: "当前公司",
|
||||
website: "官网地址",
|
||||
brandSummary: "AI 品牌摘要",
|
||||
brandSummary: "AI 公司摘要",
|
||||
keywords: "关键词",
|
||||
brandQuestions: "关键词库(搜索词)",
|
||||
primaryQuestion: "优化关键词",
|
||||
@@ -819,15 +865,15 @@ const zhCN = {
|
||||
inputParams: "输入参数",
|
||||
},
|
||||
hints: {
|
||||
brandContext: "可选。选择后会自动带出关键词与竞品信息。",
|
||||
brandFlow: "公司名称可直接输入,也可以从品牌库选择。选择优化关键词后,AI 会补充品牌摘要、竞品和标题建议。",
|
||||
brandSummaryPlaceholder: "AI 分析后会在这里补充品牌简介、差异点和适合切入的内容角度。",
|
||||
brandContext: "当前公司会自动带出关键词与竞品信息。",
|
||||
brandFlow: "使用顶部选择的当前公司生成文章。选择优化关键词后,AI 会补充公司摘要、竞品和标题建议。",
|
||||
brandSummaryPlaceholder: "AI 分析后会在这里补充公司简介、差异点和适合切入的内容角度。",
|
||||
keywords: "支持直接输入,也支持复用品牌词库里的关键词。AI 分析结果会自动补充到这里。",
|
||||
brandQuestions: "优化关键词决定文章主线,补充关键词只用于扩展相关搜索意图。",
|
||||
supplementalQuestions: "最多选择 3 个,用于覆盖相邻搜索问题,避免文章主题发散。",
|
||||
questionEmpty: "当前品牌还没有可选问题",
|
||||
selectBrandFirst: "请先从公司名称下拉选择品牌库对象",
|
||||
competitors: "竞品支持手动编辑、追加;只有从品牌库选择品牌后,才可以收藏到品牌词库。AI 分析会尽量补齐候选竞品。",
|
||||
questionEmpty: "当前公司还没有可选问题",
|
||||
selectBrandFirst: "请先在顶部选择当前公司",
|
||||
competitors: "竞品支持手动编辑、追加;选择当前公司后,可以收藏到公司词库。AI 分析会尽量补齐候选竞品。",
|
||||
competitorEmptyEditable: "还没有竞品,先手动添加一条或点击分析让 AI 自动补齐。",
|
||||
templateFields: "这里保留当前模板自己的补充字段,用来约束 AI 生成角度。",
|
||||
titleSelection: "下一步前会由 AI 给出 5 个更合适的标题候选,你可以在这里挑选或改写。",
|
||||
@@ -839,7 +885,7 @@ const zhCN = {
|
||||
outlinePreview: "右侧会根据当前大纲实时预览最终文章框架。",
|
||||
outlineEmpty: "生成大纲后,这里会显示可编辑的文章结构。",
|
||||
review: "确认无误后提交,文章会进入生成队列。",
|
||||
competitorEmpty: "当前品牌下暂无竞品数据",
|
||||
competitorEmpty: "当前公司下暂无竞品数据",
|
||||
customTitle: "如需手动改写,可在这里输入最终标题",
|
||||
keyPoints: "补充希望文章强调的卖点、观点或风格要求",
|
||||
async: "后端会立即创建文章和任务记录,再异步完成正文生成。提交成功后,列表会自动刷新。",
|
||||
@@ -859,7 +905,7 @@ const zhCN = {
|
||||
review: {
|
||||
templateName: "模版名称",
|
||||
articleTitle: "文章标题",
|
||||
brandContext: "品牌上下文",
|
||||
brandContext: "公司上下文",
|
||||
outline: "结构段落",
|
||||
currentTemplate: "当前模版",
|
||||
promptVisibility: "Prompt 可见性",
|
||||
@@ -877,8 +923,8 @@ const zhCN = {
|
||||
actions: "操作",
|
||||
},
|
||||
placeholders: {
|
||||
brandLibrary: "从品牌库选择已有品牌",
|
||||
brandName: "输入公司名称,或从品牌库选择",
|
||||
brandLibrary: "选择当前公司",
|
||||
brandName: "顶部选择的当前公司",
|
||||
website: "输入官网地址,选填",
|
||||
keywords: "输入关键词后回车,可多选",
|
||||
primaryQuestion: "选择一个优化关键词",
|
||||
@@ -927,16 +973,16 @@ const zhCN = {
|
||||
},
|
||||
messages: {
|
||||
requiredField: "请先填写 {field}",
|
||||
missingBrand: "请先输入或选择公司名称",
|
||||
selectBrandBeforeQuestion: "请先从公司名称下拉选择品牌库对象后再选择优化关键词",
|
||||
missingBrand: "请先在顶部选择当前公司",
|
||||
selectBrandBeforeQuestion: "请先在顶部选择当前公司后再继续",
|
||||
missingPrimaryQuestion: "请选择一个优化关键词",
|
||||
missingTitle: "请先选择或输入文章标题",
|
||||
missingReviewIntroHook: "请先选择一个评测引言钩子",
|
||||
missingOutline: "请至少选择一个文章结构段落",
|
||||
missingGeneratedOutline: "请先生成并确认文章大纲",
|
||||
customOutlineTooLong: "自定义结构不能超过 {count} 个字",
|
||||
selectBrandBeforeCompetitors: "请先从公司名称下拉选择品牌库对象后再管理竞品",
|
||||
selectBrandBeforeFavorite: "请先从公司名称下拉选择品牌库对象后再收藏竞品",
|
||||
selectBrandBeforeCompetitors: "请先在顶部选择当前公司后再管理竞品",
|
||||
selectBrandBeforeFavorite: "请先在顶部选择当前公司后再收藏竞品",
|
||||
missingCompetitorName: "至少需要填写竞品名称后才能收藏",
|
||||
savedCompetitor: "竞品已收藏到品牌词库",
|
||||
unsavedCompetitor: "已取消收藏该竞品",
|
||||
|
||||
Reference in New Issue
Block a user