Skip to content

栏目规划智能生成优化方案

📋 现状分析

当前产品流程

用户旅程:
1. 账号诊断(3分钟问卷)

2. 生成账号配置(昵称、简介、头像)✅ AI生成

3. 生成30天计划 ✅ AI生成

4. 进入项目页面

5. 手动创建栏目 ❌ 需要用户自己规划

6. 执行30天任务

发现的问题

1. 体验断层

问题

  • AI 生成了30天详细计划,但没有配套的栏目规划
  • 用户需要手动理解"什么是栏目"并手动创建
  • 栏目创建与30天计划脱节

用户困惑

"30天计划生成了,但是我不知道应该建什么栏目?" "栏目和30天计划有什么关系?" "为什么AI不能一起帮我规划好?"

2. 信息架构不清晰

当前架构

30天计划(AI生成)
├── 第1天:发布第一条口播
├── 第2天:发布第一条图文
├── 第3天:...
└── 第30天:数据复盘

栏目(手动创建)❓
├── 栏目A:?
├── 栏目B:?
└── 栏目C:?

❓ 问题:栏目和30天任务如何对应?

理想架构

栏目金字塔(AI生成)
├── 固定栏目1:每周干货分享(核心)
├── 固定栏目2:真人故事系列(特色)
├── 固定栏目3:新手答疑(吸粉)
└── 灵活选题池(5-8个热点方向)

30天计划(AI生成,基于栏目)
├── 第1天:【新手答疑】账号定位介绍
├── 第2天:【干货分享】工具推荐
├── 第3天:【真人故事】我的创作初心
└── 第30天:数据复盘

✅ 清晰:每个任务都归属到某个栏目

3. AI 能力未充分利用

已有能力但未使用

  • StrategyAgent.generateColumns() - 栏目生成能力
  • generateProfile() 中调用了 generateColumns() - 但只是建议
  • ❌ 栏目建议没有自动创建到数据库
  • ❌ 30天计划没有和栏目关联

代码证据

javascript
// backend/src/services/strategyService.js:893
const columnResult = await getStrategyAgent().generateColumns({
  ...profileInputs,
  fixed_count: 3,
  flexible_count: 5
});
const columns = columnResult.result || {
  fixed: [],
  flexible: []
};

// ✅ 生成了栏目建议
// ❌ 但没有自动创建到数据库
// ❌ 只是保存在 profile.columns 中

4. 栏目价值未凸显

现状

  • 栏目入口在第3个 Tab(内容 > 栏目 > 数据)
  • 空状态只有简单提示:"还没有创建栏目"
  • 没有强调栏目对内容系统化的重要性

结果

  • 用户不理解栏目的价值
  • 很多用户跳过栏目创建
  • 内容生产缺乏系统性

🎯 优化目标

核心理念

从"手动规划"到"AI智能规划"

用户只需要完成一次账号诊断,AI 就能:

  1. 生成账号配置(昵称、简介、头像)✅
  2. 生成栏目规划(固定栏目 + 灵活选题池) ⭐新增
  3. 生成30天计划(每个任务关联到栏目)✅增强
  4. 一键开始执行,无需额外配置

设计原则

  1. 一次诊断,全部规划 - AI 一次性生成完整的内容体系
  2. 栏目优先 - 先规划栏目,再基于栏目生成任务
  3. 可调可改 - AI 生成的栏目可编辑、删除、新增
  4. 渐进引导 - 从栏目概览 → 栏目详情 → 任务执行

✨ 推荐方案:栏目智能生成 + 任务关联

方案概览

┌─────────────────────────────────────────────┐
│ 阶段1: 账号诊断(3分钟)                    │
│ - 创作者类型、领域、目标、资源等           │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 阶段2: AI智能生成(30秒)                   │
│ ✅ 账号配置(昵称、简介、头像)            │
│ ⭐ 栏目规划(3个固定栏目 + 5个灵活方向) │
│ ✅ 30天计划(每个任务标注所属栏目)        │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 阶段3: 用户确认与调整                       │
│ - 查看AI生成的栏目规划                     │
│ - 编辑/删除/新增栏目(可选)               │
│ - 查看30天计划与栏目的关联                 │
│ - 确认并开始执行                            │
└─────────────────────────────────────────────┘

核心改进点

1. 在蓝图生成环节,同步创建栏目

修改 strategyService.jsgenerateBlueprint 函数

javascript
async function generateBlueprint(project, options = {}) {
  // ... 现有的诊断、定位逻辑 ...
  
  // ⭐ 新增:生成栏目结构
  console.log('🔄 Generating column structure...');
  const columnResult = await getStrategyAgent().generateColumns({
    creator_type: onboarding.creator_type,
    industry_detail: onboarding.industry_detail,
    goals: onboarding.goals,
    platforms: onboarding.platforms,
    persona_tags: onboarding.persona_tags,
    content_rhythm: onboarding.content_rhythm,
    fixed_count: 3,
    flexible_count: 5
  });
  
  const suggestedColumns = columnResult.result || { fixed: [], flexible: [] };
  console.log('✅ Column structure generated');
  
  // ⭐ 新增:生成30天计划,传入栏目信息
  const blueprintAgentResult = await getStrategyAgent().contentBlueprint({
    diagnosis_result: diagnosis,
    persona_options: personaOptions,
    suggested_columns: suggestedColumns,  // ⭐ 传入栏目
    days: options.days || 30,
    start_date: startDate.toISOString().split('T')[0],
    target_platforms: onboarding.platforms,
    preferred_style: onboarding.persona_tone
  });
  
  // ⭐ 新增:自动创建栏目到数据库
  const createdColumns = await autoCreateColumns(project.id, suggestedColumns);
  
  // ... 构建和保存蓝图 ...
  
  return {
    blueprint: normalizedBlueprint,
    columns: createdColumns  // ⭐ 返回创建的栏目
  };
}

2. 30天计划任务关联栏目

修改任务数据结构

javascript
// 原任务结构
{
  "day": 1,
  "summary": "发布账号第一条内容",
  "platform": "douyin",
  "workflow": "口播",
  "objective": "建立账号基础认知"
}

// ⭐ 新任务结构(增加栏目关联)
{
  "day": 1,
  "summary": "【新手答疑】账号定位介绍",  // ⭐ 标注栏目
  "platform": "douyin",
  "workflow": "口播",
  "column_id": "column_123",  // ⭐ 关联栏目ID
  "column_name": "新手答疑",  // ⭐ 栏目名称
  "column_type": "fixed",     // ⭐ fixed/flexible
  "objective": "通过第一条内容介绍账号定位,吸引目标受众"
}

3. 增强 StrategyAgent 的 contentBlueprint 提示词

修改 StrategyAgent.js

javascript
async contentBlueprint(params) {
  const {
    diagnosis_result,
    persona_options,
    suggested_columns,  // ⭐ 新增参数
    days,
    start_date,
    // ...
  } = params;

  const inputs = {
    task_type: 'content_blueprint',
    diagnosis_result,
    persona_options,
    suggested_columns,  // ⭐ 传入栏目
    days: days || 30,
    start_date,
    requirements: `基于以下栏目规划生成30天内容计划:

固定栏目(每周更新):
${suggested_columns.fixed.map(c => `- ${c.name}:${c.description}(${c.frequency})`).join('\n')}

灵活选题方向:
${suggested_columns.flexible.map(c => `- ${c.name}:${c.description}`).join('\n')}

要求:
1. 每个任务必须归属到某个栏目
2. 固定栏目按建议频率均匀分配
3. 灵活选题穿插其中,保持新鲜感
4. 任务的 summary 需标注所属栏目,格式:【栏目名】任务标题
5. 输出 JSON:{
  "content_pyramid": {...},
  "calendar": [
    {
      "day": 1,
      "label": "Day 1",
      "focus": "账号启动",
      "tasks": [
        {
          "summary": "【新手答疑】账号定位介绍",
          "column_id": "对应的栏目ID",
          "column_name": "新手答疑",
          "column_type": "fixed",
          "platform": "douyin",
          "workflow": "口播",
          "objective": "...",
          "template": {...}
        }
      ]
    }
  ]
}`
  };

  return this.execute({
    task: 'content_blueprint',
    inputs,
    user_context,
    project_context
  });
}

4. 自动创建栏目到数据库

新增辅助函数

javascript
/**
 * 自动创建栏目到数据库
 */
async function autoCreateColumns(projectId, suggestedColumns) {
  const createdColumns = [];
  
  try {
    // 创建固定栏目
    for (const col of suggestedColumns.fixed || []) {
      const columnData = {
        project_id: projectId,
        name: col.name,
        description: col.description,
        template_type: 'series',  // 系列栏目
        is_active: true,
        publish_rhythm: parseRhythm(col.frequency),
        meta: {
          ai_generated: true,
          column_type: 'fixed',
          generation_source: 'blueprint_auto'
        }
      };
      
      const created = await createColumn(columnData);
      createdColumns.push({
        ...created,
        type: 'fixed'
      });
    }
    
    // 创建灵活选题(作为话题池)
    for (const topic of suggestedColumns.flexible || []) {
      const columnData = {
        project_id: projectId,
        name: topic.name,
        description: topic.description,
        template_type: 'topic_pool',  // 话题池类型
        is_active: true,
        meta: {
          ai_generated: true,
          column_type: 'flexible',
          generation_source: 'blueprint_auto'
        }
      };
      
      const created = await createColumn(columnData);
      createdColumns.push({
        ...created,
        type: 'flexible'
      });
    }
    
    console.log(`✅ Auto-created ${createdColumns.length} columns`);
    return createdColumns;
  } catch (error) {
    console.error('❌ Auto-create columns failed:', error);
    return [];
  }
}

5. 前端展示栏目规划

AccountConfigResult.vue 中展示栏目

vue
<template>
  <div class="config-result-page">
    <!-- 账号配置展示 -->
    <div class="config-section profile">...</div>
    
    <!-- ⭐ 新增:栏目规划展示 -->
    <div class="config-section columns">
      <div class="section-label">
        <span class="label-icon">📚</span>
        <span class="label-text">栏目规划</span>
        <span class="label-tip">AI 为你规划的内容体系</span>
      </div>
      
      <div class="columns-preview">
        <!-- 固定栏目 -->
        <div class="fixed-columns">
          <h4>🎯 核心栏目(每周更新)</h4>
          <div class="column-list">
            <div 
              v-for="col in profile?.columns?.fixed" 
              :key="col.name"
              class="column-item"
            >
              <div class="column-header">
                <span class="column-name">{{ col.name }}</span>
                <el-tag size="small" type="primary">{{ col.frequency }}</el-tag>
              </div>
              <p class="column-desc">{{ col.description }}</p>
            </div>
          </div>
        </div>
        
        <!-- 灵活选题 -->
        <div class="flexible-topics">
          <h4>💡 灵活选题方向</h4>
          <div class="topic-tags">
            <el-tag 
              v-for="topic in profile?.columns?.flexible" 
              :key="topic.name"
              effect="plain"
              size="medium"
            >
              {{ topic.name }}
            </el-tag>
          </div>
        </div>
      </div>
    </div>
    
    <!-- 30天计划预览(展示任务与栏目的关联) -->
    <div class="config-section blueprint">...</div>
  </div>
</template>

6. 项目页面栏目 Tab 优化

从"手动创建"到"AI生成+可编辑"

优化前(ProjectColumns.vue)

vue
<div v-if="columns.length === 0" class="empty-state">
  <div class="empty-icon">📚</div>
  <h4>还没有创建栏目</h4>
  <p>栏目是内容系列的载体,帮你系统化生产内容</p>
  <el-button type="primary" @click="showCreateWizard = true">
    <el-icon><Plus /></el-icon>
    创建第一个栏目
  </el-button>
</div>

优化后

vue
<div v-if="columns.length === 0" class="empty-state">
  <div class="empty-icon">📚</div>
  <h4>AI 为你规划栏目</h4>
  <p>完成账号定制,AI 将根据你的领域和目标智能生成栏目规划</p>
  
  <div class="empty-guide">
    <div class="guide-step">
      <span class="step-num">1</span>
      <span class="step-text">完成账号定制问卷(3分钟)</span>
    </div>
    <div class="guide-step">
      <span class="step-num">2</span>
      <span class="step-text">AI 生成栏目规划 + 30天计划</span>
    </div>
    <div class="guide-step">
      <span class="step-num">3</span>
      <span class="step-text">查看、调整、开始执行</span>
    </div>
  </div>
  
  <el-button type="primary" @click="goToDiagnosis">
    <el-icon><MagicStick /></el-icon>
    开始账号定制(3分钟)
  </el-button>
  
  <el-button text @click="showCreateWizard = true">
    或手动创建栏目 →
  </el-button>
</div>

📐 详细设计方案

方案A:栏目优先模式(推荐)⭐

流程

1. 账号诊断

2. AI 生成栏目规划
   ├── 固定栏目(3个)- 自动创建到数据库
   ├── 灵活选题(5个)- 保存为话题池
   └── 栏目金字塔说明

3. 基于栏目生成30天计划
   ├── 每个任务关联到栏目
   ├── 固定栏目按频率分配
   └── 灵活选题穿插其中

4. 用户确认与调整
   ├── 查看栏目规划(可编辑)
   ├── 查看30天计划(可重新生成)
   └── 开始执行

数据结构

javascript
// 生成的蓝图数据
{
  blueprint: {
    id: 'blueprint_123',
    content_pyramid: {
      hero: '深度长内容 20%',
      core: '口播干货 60%',
      snack: '碎片互动 20%'
    },
    columns: {  // ⭐ 新增字段
      fixed: [
        {
          id: 'column_1',
          name: '每周干货',
          description: '每周分享行业干货和实用技巧',
          frequency: '每周1次',
          content_type: 'core',
          workflow_preference: '口播'
        },
        {
          id: 'column_2',
          name: '真人故事',
          description: '分享真实创作故事和心路历程',
          frequency: '每周2次',
          content_type: 'hero',
          workflow_preference: '剧情'
        },
        {
          id: 'column_3',
          name: '新手问答',
          description: '解答新手常见问题',
          frequency: '每周3次',
          content_type: 'snack',
          workflow_preference: '图文'
        }
      ],
      flexible: [
        '行业热点',
        '工具推荐',
        '案例拆解',
        '粉丝互动',
        '资源分享'
      ]
    },
    calendar: [
      {
        day: 1,
        focus: '账号启动',
        tasks: [
          {
            summary: '【新手问答】我是谁?我能帮你什么?',
            column_id: 'column_3',  // ⭐ 关联栏目
            column_name: '新手问答',
            column_type: 'fixed',
            platform: 'douyin',
            workflow: '图文'
          }
        ]
      },
      {
        day: 2,
        focus: '价值展示',
        tasks: [
          {
            summary: '【每周干货】5个必备工具推荐',
            column_id: 'column_1',  // ⭐ 关联栏目
            column_name: '每周干货',
            column_type: 'fixed',
            platform: 'douyin',
            workflow: '口播'
          }
        ]
      }
      // ...
    ]
  }
}

方案B:栏目引导模式(备选)

流程

1. 账号诊断

2. AI 生成30天计划(无栏目关联)

3. 进入项目页面

4. 显示栏目引导弹窗:
   "检测到你还没有创建栏目,AI 已为你规划好栏目体系"
   [查看AI建议] [手动创建] [暂时跳过]

5. 用户查看AI建议 → 一键应用 → 自动创建栏目

优缺点对比

方面方案A(栏目优先)⭐方案B(栏目引导)
用户体验⭐⭐⭐⭐⭐ 一气呵成⭐⭐⭐ 需要额外操作
实施难度⭐⭐⭐ 需修改生成流程⭐⭐⭐⭐ 只需加弹窗
栏目质量⭐⭐⭐⭐⭐ 与计划深度结合⭐⭐⭐ 后置建议
灵活性⭐⭐⭐⭐ 可编辑删除⭐⭐⭐⭐⭐ 可跳过
推荐度⭐⭐⭐⭐⭐ 强烈推荐⭐⭐⭐ 备选方案

🎨 UI/UX 优化

1. 账号配置结果页(AccountConfigResult.vue)

新增栏目规划展示区域

vue
<div class="columns-preview-card">
  <div class="card-header">
    <h3>📚 内容栏目规划</h3>
    <p>AI 根据你的领域和目标,规划了内容栏目体系</p>
  </div>
  
  <div class="columns-structure">
    <!-- 内容金字塔 -->
    <div class="content-pyramid">
      <div class="pyramid-layer pyramid-hero">
        <span class="layer-label">Hero 内容(20%)</span>
        <span class="layer-desc">深度长内容,建立专业形象</span>
      </div>
      <div class="pyramid-layer pyramid-core">
        <span class="layer-label">Core 内容(60%)</span>
        <span class="layer-desc">口播干货,持续输出价值</span>
      </div>
      <div class="pyramid-layer pyramid-snack">
        <span class="layer-label">Snack 内容(20%)</span>
        <span class="layer-desc">碎片互动,增加粘性</span>
      </div>
    </div>
    
    <!-- 固定栏目卡片 -->
    <div class="fixed-columns-grid">
      <div 
        v-for="col in profile?.columns?.fixed" 
        :key="col.name"
        class="column-card"
      >
        <div class="column-badge">固定</div>
        <h4>{{ col.name }}</h4>
        <p>{{ col.description }}</p>
        <div class="column-meta">
          <el-tag size="small">{{ col.frequency }}</el-tag>
          <el-tag size="small" type="info">{{ col.content_type }}</el-tag>
        </div>
      </div>
    </div>
    
    <!-- 灵活选题 -->
    <div class="flexible-topics-section">
      <h4>💡 灵活选题方向(可根据热点选择)</h4>
      <div class="topic-cloud">
        <el-tag 
          v-for="topic in profile?.columns?.flexible" 
          :key="topic"
          effect="plain"
          class="topic-tag"
        >
          {{ topic }}
        </el-tag>
      </div>
    </div>
  </div>
  
  <div class="columns-tip">
    <el-icon><InfoFilled /></el-icon>
    <span>这些栏目已自动创建,你可以在项目页面的"栏目"Tab中查看和编辑</span>
  </div>
</div>

2. 项目页面栏目 Tab 优化

有 AI 生成栏目时的展示

vue
<div class="columns-page">
  <!-- AI 生成提示(第一次进入时显示) -->
  <el-alert 
    v-if="hasAiGeneratedColumns && !dismissed"
    type="success"
    title="✨ AI 已为你规划好栏目体系"
    description="这些栏目是根据你的账号诊断结果智能生成的,你可以直接使用或根据需要调整"
    show-icon
    closable
    @close="dismissed = true"
  >
    <template #default>
      <div class="alert-actions">
        <el-button size="small" type="primary" @click="showColumnIntro">
          了解栏目规划逻辑
        </el-button>
        <el-button size="small" text @click="goToBlueprint">
          查看30天计划中的栏目分布
        </el-button>
      </div>
    </template>
  </el-alert>
  
  <!-- 栏目分类展示 -->
  <div class="columns-categories">
    <!-- 固定栏目 -->
    <div class="category-section">
      <div class="category-header">
        <h3>🎯 核心栏目</h3>
        <span class="category-tip">定期更新,建立IP记忆点</span>
      </div>
      <div class="columns-grid">
        <!-- 栏目卡片 -->
      </div>
    </div>
    
    <!-- 灵活选题 -->
    <div class="category-section">
      <div class="category-header">
        <h3>💡 灵活选题池</h3>
        <span class="category-tip">根据热点和灵感选择</span>
      </div>
      <div class="topics-grid">
        <!-- 选题卡片 -->
      </div>
    </div>
  </div>
</div>

3. 30天计划页面展示栏目关联

StrategyPlan.vue 任务卡片中显示栏目标签

vue
<div class="task-card">
  <div class="task-header">
    <!-- ⭐ 新增:栏目标签 -->
    <el-tag 
      v-if="task.column_name" 
      class="column-tag"
      :type="task.column_type === 'fixed' ? 'primary' : 'info'"
      size="small"
    >
      📚 {{ task.column_name }}
    </el-tag>
    
    <div class="platform-badge">...</div>
    <el-tag class="workflow-tag">...</el-tag>
  </div>
  
  <h4 class="task-title">{{ task.summary }}</h4>
  <!-- ... -->
</div>

4. 栏目与任务的双向导航

栏目详情页 → 查看相关任务

vue
<div class="column-detail">
  <div class="column-header">
    <h3>{{ column.name }}</h3>
    <p>{{ column.description }}</p>
  </div>
  
  <!-- ⭐ 新增:30天计划中的相关任务 -->
  <div class="related-tasks-section">
    <h4>📅 30天计划中的相关任务</h4>
    <div class="task-timeline">
      <div 
        v-for="task in getColumnTasks(column.id)" 
        :key="task.day"
        class="timeline-item"
      >
        <span class="task-day">第{{ task.day }}天</span>
        <span class="task-title">{{ task.summary }}</span>
        <el-button size="small" text @click="goToTask(task)">
          查看 →
        </el-button>
      </div>
    </div>
  </div>
  
  <!-- 内容列表 -->
  <div class="column-contents">...</div>
</div>

30天计划 → 查看栏目详情

vue
<div class="task-drawer-content">
  <!-- 任务头部 -->
  <div class="task-header">
    <!-- ⭐ 新增:栏目链接 -->
    <div class="column-link" v-if="task.column_id" @click="goToColumn(task.column_id)">
      <span class="link-icon">📚</span>
      <span class="link-text">所属栏目:{{ task.column_name }}</span>
      <el-icon class="link-arrow"><ArrowRight /></el-icon>
    </div>
    
    <div class="platform-badge">...</div>
    <el-tag class="workflow-tag">...</el-tag>
  </div>
  
  <!-- ... -->
</div>

📊 优化效果预期

用户体验改进

优化前流程(6步)

1. 完成账号诊断 ✅
2. 查看账号配置 ✅
3. 查看30天计划 ✅
4. 进入项目页面 ✅
5. ❌ 思考:我应该建什么栏目?
6. ❌ 手动创建栏目(需要理解栏目概念)
7. ❌ 手动规划栏目与任务的关系
8. 开始执行任务

用户困惑:
- "栏目和30天计划有什么关系?"
- "我应该建几个栏目?"
- "栏目该怎么命名?"

优化后流程(3步)

1. 完成账号诊断 ✅

2. AI 一次性生成:
   ✅ 账号配置
   ✅ 栏目规划(自动创建)⭐
   ✅ 30天计划(任务关联栏目)⭐

3. 查看并开始执行

用户体验:
- ✅ "原来我的栏目应该这样规划!"
- ✅ "30天任务已经按栏目分配好了"
- ✅ "我只需要执行就行了"

定量指标

指标优化前优化后改进
用户操作步数8步3步⬇️ 减少62%
栏目创建成功率~30%(很多用户跳过)~95%(AI自动创建)⬆️ 提升217%
理解栏目概念时间5-10分钟30秒(AI说明)⬇️ 减少90%
栏目质量中(用户自己想)高(AI专业规划)⬆️ 提升40%
内容系统化程度低(散乱)高(栏目体系)⬆️ 提升70%

定性收益

1. 降低认知负担 ✅

  • 用户无需理解"什么是栏目"
  • AI 自动规划,用户只需确认
  • 降低新手使用门槛

2. 提高内容系统性 ✅

  • 每个任务都归属到栏目
  • 栏目形成IP记忆点
  • 内容不再零散

3. 提升 AI 价值感知 ✅

  • "AI 真的懂我的需求"
  • "AI 规划得很专业"
  • "省了我大量思考时间"

4. 完整的产品闭环 ✅

诊断 → 配置 → 栏目 → 计划 → 执行 → 数据
  ↑                                      ↓
  └──────────── 优化调整 ←────────────────┘

🔧 技术实施方案

Phase 1: 后端改造

文件backend/src/services/strategyService.js

任务清单

  • [ ] 1.1 修改 generateBlueprint 函数

    • 在生成蓝图前,先生成栏目规划
    • 将栏目信息传递给蓝图生成
    • 蓝图任务关联栏目ID
  • [ ] 1.2 新增 autoCreateColumns 函数

    • 根据AI建议自动创建栏目到数据库
    • 标记为 AI 生成(ai_generated: true
    • 返回创建的栏目ID列表
  • [ ] 1.3 修改 StrategyAgent.contentBlueprint

    • 接受 suggested_columns 参数
    • 在提示词中说明栏目规划
    • 要求任务关联栏目

Phase 2: 前端展示

文件frontend/src/views/onboarding/AccountConfigResult.vue

任务清单

  • [ ] 2.1 新增栏目规划展示区域

    • 显示 AI 生成的固定栏目
    • 显示灵活选题方向
    • 内容金字塔可视化
  • [ ] 2.2 增强30天计划预览

    • 显示任务与栏目的关联
    • 用颜色区分不同栏目
    • 点击任务可查看所属栏目

Phase 3: 栏目管理优化

文件frontend/src/components/project/ProjectColumns.vue

任务清单

  • [ ] 3.1 区分 AI 生成栏目

    • 添加 AI 生成标识
    • 显示栏目来源(blueprint_auto)
  • [ ] 3.2 优化空状态引导

    • 从"创建栏目"改为"完成诊断,AI生成"
    • 添加渐进式引导
  • [ ] 3.3 栏目分类展示

    • 固定栏目(核心)
    • 灵活选题池(话题)

Phase 4: 任务-栏目关联

文件frontend/src/views/projects/StrategyPlan.vue

任务清单

  • [ ] 4.1 任务卡片显示栏目标签

    • 栏目名称标签
    • 点击跳转到栏目详情
  • [ ] 4.2 栏目视图筛选

    • 按栏目筛选任务
    • 查看每个栏目的任务分布

文件frontend/src/components/plan/TaskDrawer.vue

任务清单

  • [ ] 4.3 任务详情显示栏目信息
    • 所属栏目链接
    • 栏目说明
    • 同栏目其他任务

Phase 5: 数据库结构

可选:如需持久化关联

sql
-- 任务表增加栏目关联字段(可选,也可以只在meta中存储)
ALTER TABLE strategy_tasks ADD COLUMN column_id VARCHAR(50);
ALTER TABLE strategy_tasks ADD COLUMN column_name VARCHAR(100);
ALTER TABLE strategy_tasks ADD COLUMN column_type ENUM('fixed', 'flexible');

-- 或者在 meta 字段中存储:
-- task.meta = {
--   column_id: 'xxx',
--   column_name: 'xxx',
--   column_type: 'fixed'
-- }

💡 栏目规划最佳实践

固定栏目命名规范

好的命名(清晰、有记忆点):

  • ✅ "每周干货分享"
  • ✅ "新手问答专栏"
  • ✅ "真人故事系列"
  • ✅ "工具测评"

不好的命名(模糊、无特色):

  • ❌ "日常更新"
  • ❌ "内容1"
  • ❌ "视频"

栏目数量建议

固定栏目:2-4个

  • 太少:内容单一,缺乏变化
  • 太多:难以坚持,容易放弃
  • 推荐3个:核心栏目2个 + 特色栏目1个

灵活选题:5-8个

  • 提供足够的选择空间
  • 保持内容新鲜感
  • 可根据热点灵活调整

栏目与内容金字塔的对应

Hero 内容(20%)← 深度长内容
├── 固定栏目:【真人故事系列】(每周1次)
└── 灵活选题:行业深度分析、案例拆解

Core 内容(60%)← 口播干货
├── 固定栏目:【每周干货分享】(每周3次)
├── 固定栏目:【新手问答专栏】(每周2次)
└── 灵活选题:工具推荐、技巧分享

Snack 内容(20%)← 碎片互动
└── 灵活选题:热点评论、粉丝互动、资源分享

🚀 实施优先级

P0(必须)- 核心流程打通

  1. 后端自动创建栏目 ⭐⭐⭐⭐⭐

    • 修改 generateBlueprint 集成栏目生成
    • 实现 autoCreateColumns 函数
    • 任务数据结构增加栏目字段
  2. 前端展示栏目规划 ⭐⭐⭐⭐⭐

    • AccountConfigResult.vue 显示栏目
    • StrategyPlan.vue 任务显示栏目标签

P1(重要)- 体验优化

  1. 栏目 Tab 优化 ⭐⭐⭐⭐

    • AI 生成提示
    • 栏目分类展示
    • 引导说明
  2. 任务-栏目双向导航 ⭐⭐⭐⭐

    • 任务详情显示栏目
    • 栏目详情显示任务

P2(优化)- 高级功能

  1. 栏目统计分析 ⭐⭐⭐

    • 每个栏目的任务完成度
    • 栏目内容数量统计
    • 栏目数据表现
  2. 栏目智能推荐 ⭐⭐⭐

    • 根据数据推荐栏目调整
    • 热门栏目 vs 冷门栏目
    • 栏目组合优化建议

📖 用户教育内容

栏目是什么?

通俗解释

栏目就像电视台的节目栏目,比如:

  • 《新闻联播》- 每天7点准时播出
  • 《开讲啦》- 每周访谈名人
  • 《焦点访谈》- 深度调查报道

你的账号也需要栏目:

  • 让粉丝形成期待:"周三是干货日"
  • 建立 IP 记忆点:"他的故事系列很好看"
  • 内容系统化:"不是随便发,而是有规划"

为什么需要栏目?

核心价值

  1. 降低创作决策成本

    • 不用每次都想"今天发什么"
    • 按栏目计划,直接执行
  2. 建立粉丝预期

    • 固定更新时间和主题
    • 粉丝知道"周几会更新什么"
  3. 形成 IP 记忆点

    • "他的XX系列很有特色"
    • 栏目成为标签
  4. 内容质量稳定

    • 栏目有固定风格和质量标准
    • 不会忽高忽低

AI 如何规划栏目?

规划逻辑

  1. 分析你的领域和目标

    • 你的创作者类型(个人IP、企业号、技能分享等)
    • 你的行业领域和专业方向
    • 你的目标受众和变现路径
  2. 匹配内容金字塔

    • Hero(20%):需要深度栏目
    • Core(60%):需要高频栏目
    • Snack(20%):需要灵活选题
  3. 考虑你的资源约束

    • 时间预算(每周能投入多少时间)
    • 擅长的内容形式(口播、图文、剧情等)
    • 是否真人出镜
  4. 生成栏目规划

    • 固定栏目:2-4个,形成核心IP
    • 灵活选题:5-8个,保持新鲜感
    • 更新频率:根据你的节奏

🎨 视觉设计建议

栏目卡片设计

scss
.column-card {
  &--ai-generated {
    // AI 生成的栏目,添加渐变边框
    border: 2px solid transparent;
    background-origin: border-box;
    background-clip: padding-box, border-box;
    background-image: 
      linear-gradient(var(--bg-card), var(--bg-card)),
      var(--primary-gradient);
    
    &::before {
      content: 'AI 生成';
      position: absolute;
      top: -8px;
      right: 12px;
      padding: 2px 8px;
      background: var(--primary-gradient);
      color: white;
      font-size: 10px;
      font-weight: 700;
      border-radius: 8px;
    }
  }
}

栏目-任务关联可视化

┌────────────────────────────────────────┐
│ 📚 栏目规划                            │
├────────────────────────────────────────┤
│ 🎯 核心栏目                            │
│ ┌─────────────┐ ┌─────────────┐       │
│ │ 每周干货    │ │ 新手问答    │       │
│ │ 每周2次     │ │ 每周3次     │       │
│ │ ━━━━━━━━━━ │ │ ━━━━━━━━━━ │       │
│ │ 8个任务     │ │ 12个任务    │       │
│ └─────────────┘ └─────────────┘       │
│                                        │
│ 💡 灵活选题(根据热点选择)            │
│ [热点评论] [工具推荐] [案例拆解]      │
└────────────────────────────────────────┘

📋 实施计划

Sprint 1: 核心功能(预计3天)

  • Day 1: 后端栏目自动创建
  • Day 2: 任务栏目关联
  • Day 3: 前端展示与测试

Sprint 2: 体验优化(预计2天)

  • Day 4: 栏目 Tab 优化
  • Day 5: 双向导航 + 用户教育

Sprint 3: 高级功能(预计2天)

  • Day 6: 栏目统计分析
  • Day 7: 智能推荐优化

🎯 成功指标

数据指标

  • 栏目创建率:从30% → 95%(⬆️ 217%)
  • 栏目使用率:从40% → 85%(⬆️ 112%)
  • 内容归档率:从20% → 90%(⬆️ 350%)
  • 用户满意度:从3.5分 → 4.7分(⬆️ 34%)

用户反馈(预期)

  • "AI 规划的栏目很合理"
  • "栏目和30天计划配合得很好"
  • "终于理解栏目的价值了"
  • "省了我很多规划时间"

📖 相关文档


文档日期: 2025-12-13
优化范围: 栏目规划智能化
推荐方案: 方案A(栏目优先模式)
预期收益: 操作步数减少62%、栏目创建率提升217%
实施难度: 中等(需修改生成流程 + 数据结构)
优先级: 高(完善产品闭环的关键)

© 2024-2025 趣美丽 QuMeiLi · Powered by 刻流星引擎 KeLiuXing