# Content Creation Workflow for Blog Post Improvement

**Last Updated:** 2026-01-19

Complete workflow for creating improved blog post content from scratch, including element preservation, content structure, and quality standards.

## Overview

This workflow guides the manual creation of improved blog post content. The approach treats each post as a completely new creation, not building around existing content, while preserving valuable elements like calculators, videos, and images.

## Core Principles

1. **New From Scratch:** Treat as completely new post, not building around existing content
2. **Preserve Value:** Keep valuable elements (embeds, calculators, videos) but reposition as needed
3. **Human-First:** Write for humans first, optimize for search engines second
4. **Natural Flow:** Ensure logical, natural content flow throughout
5. **Comprehensive:** Cover topics thoroughly and provide genuine value

## Phase 1: Preparation

### Step 1.1: Review Current Post

**Before Creating New Content:**

1. **Read Current Content**

   - Understand current topics covered
   - Note current structure
   - Identify strengths and weaknesses

2. **Review Analysis Data**

   - SERP analysis findings
   - Content gap analysis
   - Performance data (GA4, GSC)
   - Keyword data (SISTRIX)

3. **Review Documentation**
   - `POST_ANALYSIS.md`
   - `SEO_REPORT.md`
   - `SERP_ANALYSIS.md`
   - `INTERNAL_LINKS.md`

### Step 1.2: Identify Valuable Elements

**Extract Elements to Preserve:**

**1.2.1: Calculators**

**Identify:**

- Alpine.js components (`x-data` attributes)
- Calculator functionality
- Current position in content
- Content context around calculator

**Extract:**

```html
<!-- Example: Calculator HTML -->
<div x-data="calculatorData" class="calculator-container">
  <!-- Calculator HTML -->
</div>
```

**Document:**

- Element type: Calculator
- Current position: After "Definition" section
- Proposed position: After "How to Calculate" section
- HTML code: [copy full HTML]

**1.2.2: Videos**

**Identify:**

- YouTube embeds (`<iframe>`)
- Video titles and descriptions
- Current position
- Content context

**Extract:**

```html
<!-- Example: Video embed -->
<iframe src="https://www.youtube.com/embed/VIDEO_ID" ...></iframe>
```

**Document:**

- Element type: Video
- Video title: "How to Create a Dienstplan"
- Current position: In "Examples" section
- Proposed position: After "Step-by-Step Guide" section
- Embed code: [copy full iframe code]

**1.2.3: Images**

**Identify:**

- Image paths (`/insights/bilder/...`)
- Alt text
- Captions
- Current position

**Extract:**

```html
<!-- Example: Image -->
<img
  src="/insights/bilder/example.webp"
  alt="Description"
  width="580"
  height="387"
/>
```

**Document:**

- Element type: Image
- Image path: `/insights/bilder/example.webp`
- Alt text: "Description"
- Current position: In "Introduction" section
- Proposed position: In "Visual Guide" section
- Caption: [if present]

**1.2.4: Tables**

**Identify:**

- Data tables
- Table content
- Current position
- Purpose

**Extract:**

```html
<!-- Example: Table -->
<table>
  <thead>
    ...
  </thead>
  <tbody>
    ...
  </tbody>
</table>
```

**Document:**

- Element type: Table
- Table title: "Legal Requirements Comparison"
- Current position: In "Legal Requirements" section
- Proposed position: In "Quick Reference" section
- HTML code: [copy full table HTML]

**1.2.5: Interactive Elements**

**Identify:**

- Any interactive elements
- Scripts required
- Dependencies

**Document:**

- Element type: [type]
- Dependencies: [scripts, libraries]
- Current position: [location]
- Proposed position: [new location]

### Step 1.3: Create Content Outline

**Based on Analysis, Create Outline:**

**1.3.1: Define Structure**

**Required Structure:**

1. **Introduction** (2-3 paragraphs)

   - Hook (first sentence)
   - Context (what is the topic)
   - Value proposition (what reader will learn)

2. **Main Sections (H2)** (3-6 sections)

   - Section 1: [Topic]
   - Section 2: [Topic]
   - Section 3: [Topic]
   - ... (as needed)

3. **FAQs** (10-15 questions)

   - In `faqs` array (NOT in content HTML)
   - From PAA questions and GSC queries

4. **Conclusion** (1-2 paragraphs)
   - Summary of key points
   - Next steps or CTA (if appropriate)

**1.3.2: Define Section Details**

**For Each Section:**

- **H2 Heading:** Clear, descriptive, keyword-optimized
- **Introduction:** Brief paragraph introducing section
- **Subsections (H3):** Logical breakdown
- **Content Depth:** How comprehensive?
- **Visual Elements:** What elements needed?
- **Internal Links:** Where to link?

**Example Outline:**

```markdown
## Content Outline

### Introduction

- Hook: "Als Arbeitgeber im Schichtbetrieb kennst du die Herausforderung..."
- Context: What is Dienstplan Gesetz
- Value: What reader will learn

### Was ist ein Dienstplan? (Definition - within first 20%)

- Definition paragraph
- Key characteristics
- Purpose and importance
- [Image: Dienstplan example]

### Rechtliche Grundlagen

- Arbeitszeitgesetz overview
- Key legal requirements
- [Table: Legal requirements comparison]
- Compliance requirements

### Dienstplan Erstellung

- Step-by-step guide
- Best practices
- Common mistakes
- [Video: How to create Dienstplan]
- [Calculator: Dienstplan calculator]

### Dienstplan Vorlagen

- Available templates
- How to use templates
- Customization tips
- [Download links]

### FAQs (in faqs array)

- 10-15 questions from PAA and GSC

### Conclusion

- Summary
- Next steps
```

## Phase 2: Content Creation

### Step 2.1: Write Introduction

**Requirements:**

- **Hook:** First sentence captures attention
- **Primary Keyword:** In first paragraph (natural)
- **Context:** What is the topic
- **Value Proposition:** What reader will learn
- **Length:** 2-3 paragraphs maximum
- **Tone:** Conversational, natural (du tone)

**Best Practices:**

- Avoid "Furthermore", "Moreover" (AI tells)
- Use specific examples
- Vary sentence length
- Natural transitions
- Active voice preferred

**Example:**

```html
<p>
  Als Arbeitgeber im Schichtbetrieb kennst du die Herausforderung:
  Personaleinsatzplanung, Zeiterfassung, Lohnabrechnung. Ein gut strukturierter
  Dienstplan ist dabei entscheidend – nicht nur für die Organisation, sondern
  auch für die gesetzeskonforme Umsetzung.
</p>

<p>
  Doch gibt es eigentlich ein Dienstplan Gesetz? Welche rechtlichen Grundlagen
  musst du als Arbeitgeber beachten? In diesem Ratgeber erfährst du alles über
  die rechtlichen Anforderungen an Dienstpläne, wie du einen Dienstplan
  erstellst und welche Fehler du vermeiden solltest.
</p>
```

### Step 2.2: Write Main Content Sections

**For Each Section:**

**2.2.1: Section Introduction (H2)**

**Requirements:**

- Clear, descriptive heading
- Primary or secondary keyword in heading (natural)
- Brief introduction paragraph
- Natural transition from previous section

**Example:**

```html
<h2>Was ist ein Dienstplan?</h2>

<p>
  Ein Dienstplan ist ein strukturiertes System der Personaleinsatzplanung, das
  die Arbeitszeiten der Mitarbeiter in einem Unternehmen organisiert und
  verwaltet. Er legt fest, wer wann und wo arbeiten soll – in Schichtbetrieben
  ist ein gut organisierter Dienstplan entscheidend für einen reibungslosen
  Betriebsablauf.
</p>
```

**2.2.2: Subsections (H3)**

**Requirements:**

- Logical flow within section
- Natural keyword integration
- Specific examples and data points
- Natural internal linking opportunities

**Example:**

```html
<h3>Hauptbestandteile eines Dienstplans</h3>

<p>Ein Dienstplan enthält typischerweise folgende Informationen:</p>

<ul>
  <li><strong>Arbeitszeiten:</strong> Beginn und Ende jeder Schicht</li>
  <li><strong>Mitarbeiterzuordnung:</strong> Wer arbeitet welche Schicht</li>
  <li><strong>Pausen:</strong> Geplante Pausenzeiten</li>
  <li><strong>Ruhezeiten:</strong> Einhaltung gesetzlicher Ruhezeiten</li>
</ul>

<p>
  Für eine präzise Berechnung der Arbeitszeiten kannst du unseren
  <a href="/tools/arbeitszeitrechner">Arbeitszeitrechner</a> nutzen.
</p>
```

**2.2.3: Content Quality Standards**

**Paragraphs:**

- 2-3 sentences max
- One main idea per paragraph
- Natural transitions between paragraphs
- Varied sentence structures

**Language:**

- Natural, conversational tone (du tone)
- Specific examples (not generic)
- Active voice preferred
- Varied vocabulary

**Examples:**

- Real-world scenarios
- Specific data points
- Concrete examples
- Use cases

**2.2.4: Definition Placement**

**Critical Requirement:**

- Main definition must appear within first 20% of content
- Clear, concise definition
- Natural integration (not forced)

**Example:**

```html
<!-- Definition appears early in content -->
<h2>Was ist ein Dienstplan?</h2>

<p>
  Ein Dienstplan ist ein strukturiertes System der Personaleinsatzplanung...
</p>

<!-- Rest of content follows -->
```

**2.2.5: Visual Elements Integration**

**Reintegrate Preserved Elements:**

**Positioning:**

- Place elements at appropriate positions
- Ensure natural flow around elements
- Update surrounding text if needed

**Example:**

```html
<h3>Wie berechnest du die Arbeitszeiten?</h3>

<p>
  Die Berechnung der Arbeitszeiten kann komplex sein, besonders bei
  Schichtarbeit. Unser Rechner hilft dir dabei:
</p>

<!-- Calculator element -->
<div x-data="arbeitszeitRechner" class="calculator-container">
  <!-- Calculator HTML -->
</div>

<p>
  Mit diesem Rechner kannst du schnell die Arbeitszeiten für deine Mitarbeiter
  berechnen und sicherstellen, dass alle gesetzlichen Anforderungen eingehalten
  werden.
</p>
```

### Step 2.3: Write Conclusion

**Requirements:**

- Summary of key points
- Natural transition from main content
- Next steps or CTA (if appropriate)
- No "Fazit" heading (conclusion is implied)

**Best Practices:**

- Avoid "In conclusion" (AI tell)
- Natural summary
- Actionable next steps

**Example:**

```html
<p>
  Die ordnungsgemäße Erstellung und Verwaltung eines Dienstplans im Einklang mit
  dem Arbeitszeitgesetz ist eine komplexe, aber entscheidende Aufgabe für jedes
  Unternehmen im Schichtbetrieb. Ein gut strukturierter Dienstplan sorgt nicht
  nur für die Einhaltung gesetzlicher Vorgaben, sondern auch für eine faire
  Arbeitszeitverteilung unter den Mitarbeitern.
</p>

<p>
  Mit den richtigen Tools und einer fundierten Kenntnis der gesetzlichen
  Vorschriften kannst du die Schichtplanung effizienter gestalten. Ordio
  unterstützt dich dabei mit digitalen Lösungen für die Personaleinsatzplanung.
</p>
```

## Phase 3: Element Integration

### Step 3.1: Reintegrate Preserved Elements

**Process:**

1. **Review Element Documentation**

   - Check proposed positions
   - Verify element HTML
   - Confirm dependencies

2. **Insert Elements**

   - Place at appropriate positions
   - Ensure natural flow
   - Update surrounding text

3. **Test Functionality**
   - Verify calculators work
   - Check video embeds
   - Validate image paths
   - Test interactive elements

### Step 3.2: Optimize Element Placement

**Guidelines:**

- **Calculators:** Place after relevant explanation
- **Videos:** Place where they add most value
- **Images:** Support content, not distract
- **Tables:** Place in logical sections
- **Interactive Elements:** Ensure they enhance content

## Phase 4: Content Flow Validation

### Step 4.1: Validate Content Flow

**Checklist:**

- [ ] Definition within first 20% of content
- [ ] Logical flow: Intro → Definition → Explanation → Examples → Advanced
- [ ] Smooth transitions between sections
- [ ] Natural keyword integration
- [ ] Varied sentence structures
- [ ] No AI content tells

### Step 4.2: Validate Element Integration

**Checklist:**

- [ ] All preserved elements integrated
- [ ] Elements enhance content (not distract)
- [ ] Natural flow around elements
- [ ] All elements functional
- [ ] Dependencies included

### Step 4.3: Run Validation Scripts

```bash
# Content flow validation
php v2/scripts/blog/validate-content-flow.php --post=slug --category=category

# Content analysis
php v2/scripts/blog/analyze-post-content.php --post=slug --category=category
```

## Phase 5: Quality Review

### Step 5.1: Content Quality Checklist

**Human-First Content:**

- [ ] Natural, conversational tone (du tone)
- [ ] Varied sentence structures
- [ ] No AI content tells ("Furthermore", "Moreover")
- [ ] Specific examples and data points
- [ ] Natural transitions
- [ ] Personal insights (when appropriate)

**Flow and Readability:**

- [ ] Logical content flow
- [ ] Definition within first 20%
- [ ] Smooth transitions between sections
- [ ] Paragraphs 2-3 sentences max
- [ ] Clear heading hierarchy

**Value and User Experience:**

- [ ] Provides genuine value
- [ ] Answers user questions
- [ ] Comprehensive topic coverage
- [ ] Easy to scan and read
- [ ] Visual elements enhance content

### Step 5.2: Manual Review

**Review Process:**

1. **Read Content Aloud**

   - Check natural flow
   - Identify awkward phrases
   - Note improvements

2. **Check Against Analysis**

   - Verify all gaps addressed
   - Confirm SERP insights integrated
   - Ensure keyword optimization

3. **Test User Experience**
   - Can user find information easily?
   - Is content scannable?
   - Do elements add value?

## Phase 6: Finalization

### Step 6.1: Update Post JSON File

**File:** `v2/data/blog/posts/{category}/{slug}.json`

**Update Fields:**

- `content.html` - New content HTML
- `content.text` - Plain text version (generate)
- `content.word_count` - Updated word count
- `modified_date` - Current date/time

**Backup Before Updating:**

```bash
# Create backup
cp v2/data/blog/posts/{category}/{slug}.json v2/data/blog/posts/{category}/{slug}.json.backup-$(date +%Y%m%d_%H%M%S)
```

### Step 6.2: Generate Plain Text Version

**Process:**

1. Extract text from HTML
2. Remove HTML tags
3. Clean whitespace
4. Update `content.text` field

**Script:**

```bash
# Generate plain text (if script exists)
php v2/scripts/blog/generate-plain-text.php --post=slug --category=category
```

### Step 6.3: Validate JSON File

**Check:**

- Valid JSON syntax
- All required fields present
- No syntax errors
- Content renders correctly

## Best Practices

### 1. Writing Style

**Do:**

- Write naturally, as if speaking to a colleague
- Use specific examples and data points
- Vary sentence length and structure
- Include personal insights when appropriate
- Use active voice

**Don't:**

- Use overly formal language
- Repeat the same sentence structure
- Use AI content tells ("Furthermore", "Moreover")
- Write generic content
- Keyword stuff

### 2. Content Structure

**Do:**

- Place definition within first 20%
- Use clear heading hierarchy (H2 → H3)
- Create logical flow
- Use short paragraphs (2-3 sentences)
- Include visual breaks

**Don't:**

- Skip heading levels
- Create long paragraphs
- Place definition too late
- Create illogical flow
- Overuse headings

### 3. Element Integration

**Do:**

- Place elements where they add value
- Ensure natural flow around elements
- Test element functionality
- Update surrounding text if needed

**Don't:**

- Force element placement
- Break content flow
- Forget to test elements
- Leave elements without context

## Related Documentation

- [Blog Post Improvement Process](BLOG_POST_IMPROVEMENT_PROCESS.md) - Complete improvement workflow
- [Content Quality Checklist](CONTENT_QUALITY_CHECKLIST_IMPROVEMENT.md) - Quality standards
- [SEO/GEO/AEO Checklist](SEO_GEO_AEO_CHECKLIST.md) - Optimization checklist
- [Content Writing Best Practices](../../CONTENT_WRITING_BEST_PRACTICES_2026.md) - Writing guidelines
- [AI Content Avoidance Guide](../../AI_CONTENT_AVOIDANCE_GUIDE.md) - AI content avoidance

## Quick Reference

### Content Creation Checklist

- [ ] Review current post and analysis data
- [ ] Identify and extract valuable elements
- [ ] Create content outline
- [ ] Write introduction (hook, context, value)
- [ ] Write main sections (H2/H3 structure)
- [ ] Ensure definition within first 20%
- [ ] Reintegrate preserved elements
- [ ] Write conclusion
- [ ] Validate content flow
- [ ] Review content quality
- [ ] Update post JSON file
- [ ] Validate JSON file

### Estimated Time

- **Element Extraction:** 30 minutes
- **Outline Creation:** 1 hour
- **Content Writing:** 4-8 hours
- **Element Integration:** 1 hour
- **Quality Review:** 1-2 hours
- **Total:** 7-13 hours
