1. CMS İçerik Modeli Nedir?
CMS içerik modeli; içerikleri (sayfa, blog, oda, paket, kampanya, case study vb.) content type’lara ayırıp her tipin alanlarını (fields) ve ilişkilerini (relations) tanımlama disiplinidir. Bu disiplin iyi kurulmadığında; editoryal ekip her içerikte farklı ekranlar görür, geliştirici ekip her sayfa tipinde yeni koşullar yazar, SEO tarafında meta ve schema tutarsızlaşır. İyi kurulduğunda ise aynı içerik “panelde net”, “kodda öngörülebilir” ve “SERP/SGE’de daha tutarlı” görünür.
Bu noktada kritik fikir şu: CMS’i “panel” değil, ürünün veri sözleşmesi (content contract) olarak düşünmek. Çünkü Next.js gibi modern framework’lerde sayfa üretimi; verinin şekline, zorunluluklarına, lokalizasyonuna ve cache mantığına bağlıdır. Yanlış model, performansı ve sürdürülebilirliği doğrudan etkiler.
CMS içerik modeli neden “yeniden mimari” ihtiyacını azaltır?
İçerik modeli proje başında doğru tasarlanan sitelerde, yeni sayfa/özellik eklerken “CMS yetmiyor, tablo değiştirelim” ihtiyacı belirgin şekilde azalır. Bunun nedeni; içerik tipleri ve field setlerinin, yalnız bugünü değil 6/12 aylık roadmap’i taşıyacak şekilde kurgulanmasıdır. “Genelde/çoğu projede” en pahalı revizyonlar; URL/slug değişiklikleri, ilişki alanlarının sonradan eklenmesi ve çok dilli yapıların geç düşünülmesinden çıkar.
CMS içerik modeli nedir, nasıl tasarlanır?
- •Envanter: Hangi içerikler var ve hangileri büyüyecek?
- •Sözleşme: Hangi tip hangi alanları zorunlu kılar?
- •Governance: Kim hangi alanı doldurur, kim onaylar?
- •Versioning: Model değişirse migration nasıl yapılır?
Ne yapmalıyım?
- • İçerik envanteri çıkar (sayfa/blog/SSS/case/oda/paket).
- • 6/12 aylık roadmap’te eklenecek içerik tiplerini işaretle.
- • “Zorunlu alan seti”ni yaz (başlık, slug, özet, görsel, SEO).
- • Relation ihtiyacını belirle (oda→paket, blog→hizmet, case→sektör).
- • Modeli dokümante et ve onay mekanizması kur.
2. Content Type Tanımlama (Sayfa, Blog, Oda, Paket, Referans vb.)
Content type tasarımı, “panelde kaç menü var?” sorusu değil; hangi içerikler farklı yaşam döngüsüne ve farklı şablona sahip? sorusudur. Bir content type; hem editoryal ekranı hem de front-end şablonunu temsil eder. İçerik türleri karışırsa, editoryal ekip doğru alanı bulamaz; geliştirici ekip de “her ihtimal” için kod yazar.

Hangi içerikler için ayrı content type açmalıyım?
- •Farklı şablon: Oda sayfası ile blog aynı olamaz.
- •Farklı SEO alanları: “Hizmet sayfası” ile “SSS” meta yapısı değişir.
- •Farklı ilişki: Oda→paket→kampanya gibi ilişkiler blogdan farklıdır.
- •Farklı workflow: Case study onay süreci blogdan farklı olabilir.

Otel sitesi için örnek content type seti
- •Room (Oda): kapasite, metrekare, özellikler, galeri, fiyat/CTA, sezon etiketi
- •Package (Paket): tarih aralığı, dahil olanlar, fiyat bandı, şartlar
- •Destination (Destinasyon): bölge, ulaşım, harita, deneyimler
- •Campaign (Kampanya): teaser/launch/reminder alanları, bitiş tarihi
- •FAQ: soru/cevap tekrar eden yapı
- •Blog: kategori/etiket, yazar, okuma süresi, içerik blokları
B2B kurumsal site için örnek content type seti
- •Service (Hizmet): problem–çözüm, süreç, deliverables, CTA blokları
- •Case Study: problem/müdahale/sonuç + KPI kartı
- •Reference/Partner: logo, sektör, proje türü
- •Resource (Rehber/İndirilebilir): asset yönetimi
- •FAQ: satış engellerini çözen soru seti
- •Blog: thought leadership + how-to
Ne yapmalıyım?
- • Şablonları listele: hangi sayfa hangi blokları kullanıyor?
- • Her şablon için ayrı type mı yoksa “blok tabanlı” yaklaşım mı karar ver.
- • Oda/paket/destinasyon gibi ilişkili tipleri erken tanımla.
- • SSS ve case gibi tekrar kullanılan içerikleri ayrı type yap.
- • İçerik ekibinin panel deneyimini test et (editorial UX).
3. Field Tasarımı (Metin, Rich Text, Media, Relation, Lokalizasyon)
Field tasarımı; “hangi alanlar var?” değil, hangi alanlar zorunlu, hangileri opsiyonel, hangileri standardize? sorusudur. İyi bir field seti; editoryal ekibi korur (yanlış veri girişi azalır) ve front-end tarafını hızlandırır (her sayfa için özel koşul yazma ihtiyacı düşer).

Field seviyesinde zorunlu/opsiyonel alanlar nasıl belirlenir?
Zorunluluk, genelde üç şeye göre belirlenir: SEO, sayfa şablonu, iş akışı. Örneğin blogda “kapak görseli” zorunlu olabilir; ama “Video” opsiyonel kalabilir. Service sayfasında “Primary CTA” zorunludur; “Secondary CTA” roadmap’e göre opsiyonel kalabilir.
Önerilen field kategorileri (genel)
- •Identity: title, slug, locale, status (draft/published)
- •Content: summary, body (rich text / block editor), sections
- •Media: cover image, gallery, video, attachments
- •SEO: meta title, meta description, canonical, robots, OG image
- •Relations: category, tags, related posts, related services
- •Governance: author, reviewer, publish date, version

SEO/Meta alanları (schema ve SERP uyumu)
Kurumsal projelerde en sık hata: SEO alanlarını içerik alanına karıştırmak. SEO alanları her içerikte standart olmalı ve şunları kapsamalı: Meta Title/Meta Description, Canonical URL (özellikle benzer içerikler), OG Image ve sosyal paylaşım alanları, Index/noindex, follow/nofollow, Structured data tetikleyicileri (ör. FAQ var mı?). Teknik SEO Notu ile uyum: URL/slug standardı, schema kurgusu ve çok dilde hreflang yaklaşımı içerik modelinin parçası olmalı.
Media ve relation alanları: Ne zaman şart?
Media alanlarını “görsel yükledik bitti” diye düşünmeyin. Hero, OG, kart görselleri ve galeri farklı ihtiyaçlardır. Relation alanları ise içerikleri birbirine bağlayarak hem kullanıcı deneyimini hem internal linking’i güçlendirir: Blog → Service ilişkilendirme (iç link hedefleri), Room → Package, Destination ilişkisi (otel bağlamı), Case Study → Service, Sector ilişkisi (B2B bağlamı).
Ne yapmalıyım?
- • Field setini “çekirdek + opsiyonel” diye ikiye ayır.
- • SEO/meta alanlarını tüm type’larda standartlaştır.
- • Medya alanlarını amaçlarına göre ayır (hero/og/gallery).
- • Relation’ları “site mimarisi” ile eşleştir (blog↔service, oda↔paket).
- • Çok dilli yapı + slug/hreflang kuralını dokümante et.
4. Otel ve B2B İçin Örnek İçerik Modelleri
Bu bölüm, rakiplerin çoğunun atladığı “ileri tasarım” katmanını kapatır: yalnız içerik tipi saymak yerine, modeli büyüten ilişkileri ve SEO sözleşmesini netleştirir. Otel projelerinde oda/paket/destinasyon ilişkileri; B2B projelerinde service/case/reference ilişkileri kritik fark yaratır.

Otel modeli örneği (Room–Package–Destination–Campaign)
Aşağıdaki model, Türkiye’de özellikle Antalya, Belek, Side, Kemer, Bodrum gibi destinasyon odaklı aramalarda “yerel sayfa + deneyim + teklif” mimarisini taşır:
- •Room → (relation) Package (çoklu)
- •Package → (relation) Campaign (opsiyonel)
- •Destination → (relation) Room / Package (çoklu)
- •Blog → (relation) Destination / Service (çoklu)
- •FAQ → hem Service hem Room altında yeniden kullanılabilir
B2B modeli örneği (Service–Case Study–Reference–FAQ)
B2B tarafında amaç; “hizmet + kanıt + süreç + SSS” ile satış engellerini kırmaktır:
- •Service → (relation) Case Study (çoklu)
- •Case Study → (relation) Reference/Partner (çoklu)
- •FAQ → Service’lere bağlanır
- •Blog → Service’lere bağlanır (otorite → dönüşüm yolu)
Örnek içerik modeli tablosu (1 tablo – Media Pack ile uyumlu)
| Content Type | Zorunlu Alanlar (çekirdek) | Opsiyonel Alanlar | İlişkiler (Relations) | SEO/Meta |
|---|---|---|---|---|
| Blog | Title, Slug, Summary, Body, Cover | Author, Reading time, Video | Category, Tags, Related Service | Meta title/desc, OG, canonical |
| Service | Title, Slug, Problem/Solution, CTA | Secondary CTA, Proof blocks | Related Blog, Related Cases | Meta + schema tetikleyici |
| Room (Otel) | Title, Slug, Gallery, Features | Video, 360, Season tag | Packages, Destination | Meta + Room/Hotel uyumu |
| Package | Title, Date range, Inclusions | Price band, Terms | Rooms, Campaign | Meta + landing uyumu |
| FAQ | Question, Answer | Category | Service/Room ilişkisi | FAQPage uyumu |
Ne yapmalıyım?
- • Otel tarafında Room–Package–Destination ilişkisini önce tasarla.
- • B2B tarafında Service–Case–Reference üçlüsünü “kanıt zinciri” olarak kur.
- • Blog’u yalnız içerik değil, dönüşüm yolu (blog→service) olarak bağla.
- • FAQ’ları bağımsız type yap; birden fazla yerde kullan.
- • Modeli tablo + diyagramla dokümante et.
5. CMS’ten Next.js’e Veri Akışı
CMS modeli iyi olsa bile, veri akışı ve yayınlama mimarisi doğru değilse ekipler yine zorlanır. Next.js tarafında amaç; CMS’den gelen veriyi öngörülebilir, cache’lenebilir, çok dilli ve SEO uyumlu bir şekilde sayfaya dönüştürmektir. Bu yüzden “schema-aware modelling” yaklaşımıyla, model ve front-end sözleşmesi birlikte düşünülmelidir.

Veri akışı planı (önerilen)
- •Draft/Preview: içerik ekibi ön izleme görür (staging/preview)
- •Publish: publish tetikleyince cache invalidation (revalidate) çalışır
- •SEO üretimi: meta + canonical + OG + schema aynı sözleşmeden gelir
- •i18n: locale bazlı slug, hreflang ve içerik fallback kuralları belirlenir
URL/Slug, hreflang, schema uyumu (Technical SEO)
İçerik modeli; slug’ı yalnız “metin alanı” olarak değil, URL sözleşmesi olarak ele almalıdır. Çok dilli projelerde slug yönetimi kritikleşir: örneğin TR/EN içerikler birebir aynı olmaz; hreflang mantığı ve canonical kuralları baştan tanımlanmalıdır. Ayrıca schema türleri (FAQ/HowTo/Article/Service) CMS’de “tetikleyici alanlar” ile yönetilirse, front-end tarafında manuel iş azalır.
İç link uyumu: Bu yaklaşımın altyapı mantığı /tr/yazilim/web-sitesi-gelistirme ve içerik stratejisi /tr/seo/icerik-seo ile birlikte ele alınmalıdır.
Ne yapmalıyım?
- • Preview + publish akışını dokümante et (kim, neyi onaylar?).
- • CMS’de schema tetikleyicilerini standartlaştır (FAQ var mı, HowTo var mı?).
- • Locale + slug + hreflang kuralını yaz ve test et.
- • Revalidate/cache stratejisini içerik tipine göre belirle.
- • İç link hedeflerini (blog→service) modelde relation olarak kur.
6. Fark Yaratan Mini Bölüm: Modeli “Versioned” Tasarla
Rakip içeriklerin çoğu CMS’i sadece “panel” olarak anlatıyor; oysa sürdürülebilirlik versioning + migration + governance ile gelir. “Yeni bir content type eklemek” kaçınılmazdır; önemli olan bunu kontrollü yapmak. Yılda en az 1 kez (Refresh Cycle: 365) model gözden geçirilmeli; yeni içerik tipleri ve SEO ihtiyaçları geldikçe field setleri versioned şekilde güncellenmelidir.
Ne yapmalıyım?
- • Model değişikliklerini “v1.0 / v1.1” gibi versiyonla.
- • Migration notu tut: eski içeriklere ne olacak?
- • Field deprecate politikası belirle (kaldırma yerine pasifleştirme).
- • Editoryal rehberi güncelle ve eğitim planı yap.
- • Yıllık model review takvimi oluştur (365 gün).
7. CMS Content Model & Field Checklist Şablonunu İndir — Yazılım / CMS içerik modeli
CMS Content Model & Field Checklist Şablonunu İndir — Yazılım / CMS içerik modeli (v1.0)
Bu asset; kurumsal web, otel ve B2B projelerinde CMS içerik modelini “az ama doğru” kurmak için content type + field + relation + SEO/meta kontrolünü hızlandırır. Modelin roadmap’i taşıyıp taşımadığını ve Next.js veri akışına uygunluğunu 30–60 dakikada netleştirmenizi sağlar.
Kim Kullanır?
İçerik lideri, ürün sahibi, teknik lider, SEO uzmanı ve ajans proje yöneticisi.
Nasıl Kullanılır?
- Mevcut içerik envanterinizi çıkarın ve type’ları işaretleyin.
- Field checklist’i doldurun; eksikleri “v1.1 backlog” olarak yazın.
- 14 günlük sprint planıyla düzenlemeleri uygulayın ve KPI’ları ölçün.
Ölçüm & Önceliklendirme (Kısa sürüm)
- ▢ ✅ İçerik envanteri çıkarıldı (sayfa/blog/SSS/case/oda/paket)
- ▢ ✅ Content type seti şablonlara göre ayrıldı
- ▢ ✅ Zorunlu alan seti tanımlandı (title/slug/summary/body/cover)
- ▢ ✅ SEO/meta alanları tüm type’larda standart
- ▢ ✅ Relation alanları site mimarisi ile eşleşiyor (blog↔service, oda↔paket)
- ▢ ✅ Çok dil (locale) + slug + hreflang kuralı dokümante
- ▢ ✅ Preview/publish workflow net (editorial UX)
- ▢ ✅ Schema tetikleyicileri (FAQ/HowTo/Article/Service) tanımlı
- ▢ ✅ Model versioning planı var (v1.0/v1.1)
- ▢ ✅ Annual review (365) takvimi var
PDF içinde: Problem→Kök Neden→Çözüm tablosu + 14 gün sprint planı + önce/sonra KPI tablosu
8. Sonuç: “Az ama doğru” model, hız + sürdürülebilirlik getirir
CMS içerik modelini doğru kurduğunuzda, içerik ekibi daha hızlı ve hatasız üretim yapar; Next.js tarafında sayfa üretimi daha öngörülebilir hale gelir; SEO/meta ve schema çıktıları tutarlı olur. En büyük kazanım ise şudur: 6/12 aylık roadmap büyüdüğünde bile “yeniden mimari” ihtiyacı azalır.

Bir Sonraki Adım
Kurumsal web, otel ve B2B projelerinde içerik ekibi + Next.js ekibi için net, sürdürülebilir field planı çıkarın.
