feat(ai): 后台摘要生成与 SEO 设置文案补齐

独立 SEO 框增加 AI 生成摘要写入 excerpt;全局 SEO schema 补充 AI 开关说明与提示词占位。
This commit is contained in:
2026-07-12 15:41:18 +08:00
parent b36186da65
commit 8fe708bf1e
4 changed files with 267 additions and 60 deletions
+49 -8
View File
@@ -2,7 +2,7 @@ export const seoSchema = {
key: 'global.seo',
title: 'SEO 优化',
icon: 'fas fa-search',
description: '站点标题、描述、关键词、Sitemap 等搜索引擎优化设置。',
description: '站点标题、描述、关键词与 AI SEO。AI 生成入口在文章「独立 SEO」框;连接配置在「扩展 → AI 连接配置」。优先使用 WordPress AI Connectors。',
defaults: {
seo_enabled: true,
seo_ai_enabled: false,
@@ -36,9 +36,22 @@ export const seoSchema = {
title: 'SEO 基础',
icon: 'fas fa-globe',
fields: [
{ key: 'seo_enabled', label: '启用核心 SEO 优化', type: 'switch', default: true },
{ key: 'seo_ai_enabled', label: '启用 AI SEO 生成', type: 'switch', default: false },
{ key: 'seo_connector', label: '标题连接符', type: 'input', default: '-', placeholder: '例如:- 或 |' },
{
key: 'seo_enabled',
label: '启用核心 SEO 优化',
type: 'switch',
default: true,
help: '关闭后主题不再输出 SEO title/description/keywords 等 head 标签。',
},
{
key: 'seo_ai_enabled',
label: '启用 AI SEO 生成',
type: 'switch',
default: false,
help: '开启后文章/分类「独立 SEO」框显示「AI 生成 SEO」按钮。需先配置 AI 连接(WP Connectors 或扩展 → AI 连接配置)。',
dependsOn: { key: 'seo_enabled', value: true },
},
{ key: 'seo_connector', label: '标题连接符', type: 'input', default: '-', placeholder: '例如:- 或 |', help: 'AI 生成标题时会用此连接符追加站点名。' },
{ key: 'seo_title', label: '站点 SEO 标题', type: 'textarea', rows: 2, default: '' },
{ key: 'seo_keywords', label: '站点 SEO 关键词', type: 'textarea', rows: 3, default: '' },
{ key: 'seo_description', label: '站点 SEO 描述', type: 'textarea', rows: 4, default: '' },
@@ -46,12 +59,40 @@ export const seoSchema = {
},
{
key: 'ai-seo',
title: 'AI SEO',
title: 'AI SEO 提示词',
icon: 'fas fa-robot',
description: '留空则使用内置 Zibll 风格默认提示词。填写后作为 system instruction 覆盖默认。',
fields: [
{ key: 'ai_seo_title_prompt', label: '标题提示词', type: 'textarea', rows: 3, default: '' },
{ key: 'ai_seo_keywords_prompt', label: '关键词提示词', type: 'textarea', rows: 3, default: '' },
{ key: 'ai_seo_description_prompt', label: '描述提示词', type: 'textarea', rows: 3, default: '' },
{
key: 'ai_seo_title_prompt',
label: '标题提示词',
type: 'textarea',
rows: 5,
default: '',
dependsOn: { key: 'seo_ai_enabled', value: true },
placeholder: '你是一名资深的网站 SEO 编辑……直接输出标题文本本身,不要任何前缀、引号或解释。',
help: '控制 AI 如何生成 SEO 标题。留空使用主题内置默认。',
},
{
key: 'ai_seo_keywords_prompt',
label: '关键词提示词',
type: 'textarea',
rows: 5,
default: '',
dependsOn: { key: 'seo_ai_enabled', value: true },
placeholder: '你是一名资深 SEO 编辑……使用英文逗号分隔,直接输出关键词列表。',
help: '控制 AI 如何生成 meta keywords。留空使用主题内置默认。',
},
{
key: 'ai_seo_description_prompt',
label: '描述提示词',
type: 'textarea',
rows: 5,
default: '',
dependsOn: { key: 'seo_ai_enabled', value: true },
placeholder: '你是一名资深的中文 SEO 编辑……字数控制在 80 至 150 个汉字之间。',
help: '控制 AI 如何生成 meta description。留空使用主题内置默认。',
},
],
},
{