---
title: Mitmekeelse blogi audit
description: Kontrollib mitmekeelse sisu täielikkust, järjepidevust, hreflangi ja metasiltide vastavust.
category: Marketing
sublabel: Sisu
author: AgriciDaniel
tags: 
license: MIT
source: https://github.com/AgriciDaniel/claude-blog
---

# Blogi lokaadi audit — mitmekeelne kvaliteedikontroll

Auditeerib mitmekeelse blogisisu kataloogi, et iga keeleversioon oleks täielik, järjepidev, õigesti märgistatud ja SEO-optimeeritud. Püüab rahvusvahelise sisu probleemid kinni enne, kui need reastusi kahjustavad.

> Kohandatud `claude-blog-multilingual`-ist, autor Chris Mueller (Pro Hub Challenge, märts 2026). Originaal: https://github.com/Chriss54/multilingual-int

## Töövoog

### Faas 1: Avastamine

1. Lahenda sihtkataloog projekti juure/praeguse töökataloogi sees. Keeldu sümbolviitega kataloogidest ja juurevälisest läbiminekust, seejärel skaneeri blogisisu ja rühmita postitused keele järgi, kasutades:
   - Alamkataloogi nimesid (`en/`, `de/`, `fr/`).
   - Frontmatteri välju `lang` ja `translatedFrom`.
   - Faili `hreflang-map.json`, kui see on olemas.
2. Normaliseeri tuvastatud keelekoodid jagatud mitmekeelse lokaadi reeglitega, mida kasutavad `blog-translate`, `blog-localize` ja `blog-multilingual`: ISO 639-1 keel väiketähtedega, valikuline ISO 15924 skript pealkirjatähtedega, valikuline ISO 3166-1 Alpha-2 piirkond suurtähtedega. Märgi mitmetähenduslikud ainult-keelekoodid nagu `es`, `pt` ja `zh`, kui sisu ei deklareeri selgesõnalist neutraalset režiimi.
3. Ehita sisumaatriks, mis kaardistab, milline postitus millistes keeltes olemas on. Kasuta enne slugide võrdlemist stabiilset tõlkegrupi võtit: `translationGroupId`, `sourceSlug`, schema `translationOfWork.url` või ID-d ja URL-id failis `hreflang-map.json`. Lange tagasi normaliseeritud lähte slugile ainult siis, kui stabiilset võtit pole.
4. Tuvasta lähtekeel (kõige tavalisem `translatedFrom` siht või väli `sourceLanguage` failis `hreflang-map.json`, kui olemas).

### Faas 2: Täielikkuse audit

Näita, millised tõlked puuduvad:

```
### Translation coverage matrix

| Post (EN) | DE | FR | ES | JA |
|-----------|----|----|----|----|
| how-to-avoid-ai-slop | ok | ok | missing | missing |
| content-marketing-2026 | ok | missing | ok | missing |

Coverage: 60% (6 of 10 expected translations present)
Missing: 4 translations needed
```


### Faas 3: Sisu pariteedi audit

Iga postituse jaoks, mis on mitmes keeles:

| Kontroll | Mis | Tõsidus |
|-------|------|----------|
| Sektsioonide arv | Sama arv H2 ja H3 sektsioone | Kriitiline |
| KKK arv | Sama arv KKK üksusi | Kõrge |
| Piltide arv | Sama arv pilte | Kõrge |
| Diagrammide arv | Sama arv diagramme (SVG joonised) | Kõrge |
| Sõnade arvu suhe | Oodatavas vahemikus keelepaari jaoks (DE +20% kuni +30%, JA −20%, ES +10%) | Keskmine |
| Linkide arv | Sarnased sisemiste ja väliste linkide arvud | Keskmine |
| Tõenduspõhised väited | Samad toetatud väited ja viited versioonide lõikes | Keskmine |
| Frontmatteri pariteet | Kõik nõutavad väljad olemas iga versiooni kohta | Kõrge |

Märgi iga oluline hälve probleemiks.

### Faas 4: SEO pariteedi audit

Iga keeleversiooni jaoks kontrolli:

| Element | Kontroll | Tõsidus |
|---------|-------|----------|
| Title tag | Olemas, lokaliseeritud, selge ja lehele sobiv | Kriitiline |
| Meta description | Olemas, lokaliseeritud, täpne ja kooskõlas nähtava sisuga | Kriitiline |
| `lang` atribuut või frontmatter `lang` | Olemas, kehtiv Google-ühilduv hreflang või BCP 47 keeletähis | Kriitiline |
| Canonical URL | Osutab sama keele lehele, mitte lähtekeele lehele ega x-defaultile | Kriitiline |
| Schema `inLanguage` | Vastab `lang`-ile | Kõrge |
| Schema `translationOfWork` | Osutab lähte URL-ile | Kõrge |
| Alt tekst | Tõlgitud (pole inglise alt mitte-EN postitustes) | Kõrge |
| Slug | Lokaliseeritud (pole inglise slugi mitte-EN postitustes) | Keskmine |
| Sildid | Lokaliseeritud | Keskmine |
| Märksõnad | Lokaliseeritud | Keskmine |

### Faas 5: Hreflangi audit

Kui `hreflang-tags.html`, `hreflang-sitemap.xml` või `hreflang-map.json` on kataloogis olemas:

| Kontroll | Mis | Tõsidus |
|-------|------|----------|
| Eneseviide | Iga leht viitab iseendale | Kriitiline |
| Tagasiviited | Iga suhe on kahesuunaline | Kriitiline |
| Canonicali järjepidevus | Iga hreflangi leht kanoniseerib oma sama keele URL-ile | Kriitiline |
| `x-default` | Olemas, osutab sobimatu keele tagavarale, nt keelevalija või vaikimisi turuleht | Kriitiline |
| Keelekoodid | Kehtivad Google-ühilduvad hreflangi tähised: ISO 639-1 keel pluss valikuline ISO 15924 skript või ISO 3166-1 Alpha-2 piirkond | Kõrge |
| URL järjepidevus | Sama protokoll, sama trailing-slash konventsioon | Keskmine |
| Täielikkus | Iga keeleversioon on esindatud | Kõrge |

Kui hreflangi faile pole, teata seda kriitilise lüngana ja paku:
„Käivita `/blog multilingual <topic> --languages ...` uuesti genereerimiseks või loo hreflang-tags.html käsitsi.“

Kui `seo-hreflang` claude-seo-st on installitud, soovita seda sügavamaks valideerimiseks käivitada.

### Faas 6: Värskuse audit

Postituste jaoks, millel on frontmatteris `translatedDate`:

| Kontroll | Mis | Tõsidus |
|-------|------|----------|
| Allikas uuendatud pärast tõlget | Allikas muudetud pärast `translatedDate` | Kriitiline |
| Allika sisu triiv | Salvestatud allika räsi või allika `dateModified` erineb praegusest allikast | Kriitiline |
| Tõlke triiv | Salvestatud tõlke räsi erineb praegusest lokaliseeritud failist | Keskmine |
| Tõlge vanem kui 90 päeva | Võib vajada värskendust | Keskmine |
| `lastUpdated` mittesobivus versioonide vahel | Versioonid on sünkroonist väljas | Keskmine |
| Git või faili mtime uuem kui `translatedDate` | Sisu muutus ilma frontmatteri uuenduseta | Hoiatus |

Kui saadaval, salvesta ja võrdle `sourceHash`, allika `dateModified`, `translationHash` ja Git mtime enne, kui tuginetakse ainult `translatedDate`-le.

Väljasta tegevuskäsud iga vananenud faili kohta:

```
3 translations are stale:
- de/ki-trends-2026.md (source updated 2 days ago)
  -> Run: /blog translate en/ai-trends-2026.md --to de
- fr/ki-trends-2026.md (source updated 2 days ago)
  -> Run: /blog translate en/ai-trends-2026.md --to fr
- es/tendencias-ia-2026.md (translation > 90 days old)
  -> Run: /blog translate en/ai-trends-2026.md --to es
```


### Faas 7: Aruanne

Väljasta vaikimisi markdownina. Kui kasutaja edastab `--html`, kirjuta aruanne ka faili `locale-audit-report.html` ainult auditeeritud projekti juure sees. Escape’i kõik dünaamilised failinimed, pealkirjad, URL-id ja probleemitekstid `html.escape(value, quote=True)` abil enne HTML-i renderdamist ning keela sümbolviitega või juurevälised aruandeteed.

```
## Multilingual content audit report

### Summary
- Posts audited: [N] across [N] languages
- Overall health: [score] / 100
- Critical issues: [N]
- Warnings: [N]

### Translation coverage
[Matrix from Phase 2]

### Issues found
#### Critical
- [Issue with file references]

#### Warnings
- [Issue with file references]

#### Passed
- [Checks that passed]

### Prioritized fixes
1. [Highest-impact action]
2. [...]

### Stale-translation alerts
[Runnable commands from Phase 6]

### Quick fixes
- Run `/blog translate <file> --to <missing-langs>` for [N] missing translations.
- Run `/blog multilingual` to regenerate hreflang assets.
- Run `/blog localize <file> --locale <code>` for weak cultural adaptations.
```


## Veakäsitlemine

| Stsenaarium | Tegevus |
|----------|--------|
| Tühi kataloog | „Blogipostitusi ei leitud teel [path]“ |
| Ainult üks keel olemas | Teata katvusest, soovita sihtkeeli |
| Hreflangi faile pole | Märgi kriitilise lüngana, paku uuesti genereerimist |
| Tundmatu failiformaat | Jäta vahele hoiatusega |

## Ristviited

- Täida puuduvad tõlked: `/blog translate <file> --to <missing-codes>`
- Süvenda nõrku kohandusi: `/blog localize <file> --locale <code>`
- Genereeri hreflangi varad uuesti: `/blog multilingual <topic> --languages <codes>`