Tüm Yazılara Dön
Teknik SEO
1 Eylül 2026
9 dk okuma

Sitemap lastmod Nasıl Doğru Kullanılır?

Intent
Teknik SEO

lastmod, URL'nin içerik veya ana kaynak verisi anlamlı biçimde en son ne zaman değiştiğini belirtir. Deployment zamanı değildir. Her deploy'da bütün URL'lere new Date() yazmak gerçek değişiklik bilgisini yok eder; sitemap güncelleme sinyalidir, yeniden crawl veya indeksleme garantisi değildir.

Gerçek XML çıktısı nasıl görünür?

Anlamlı bir makale revizyonundan sonra sitemap'te beklenen şekil şöyledir:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://intent.com.tr/blog/canonical</loc>
    <lastmod>2026-08-28</lastmod>
  </url>
</urlset>

2026-08-28, içerik kaynağında veya CMS kaydında doğrulanabilir bir değişiklik tarihini temsil etmelidir. Build 1 Eylül'de çalıştı diye tarihi 1 Eylül'e taşımayın.

Hangi değişiklik lastmod'u günceller?

DeğişiklikGüncellenir mi?Neden
Yeni teknik bölüm veya güncel kod örneğiEvetAna belgenin anlamlı kısmı değişir
Factual correction / güncel teknik davranışEvetOkuyucunun kararını etkileyen bilgi değişir
Ana içeriğin kapsamlı yeniden düzenlenmesiEvetKaynak belge yeniden yayınlanmış olur
DeploymentHayırİçerik değişikliği değildir
CSS veya font değişikliğiGenellikle hayırURL'nin bilgi içeriği aynı kalır
Footer veya menü değişikliğiGenellikle hayırMakalenin ana kaynağı değişmez
Küçük yazım hatasıGenellikle hayırTüm belgeyi güncellenmiş göstermek gerekmez

Google sitemap yönergeleri, lastmod değerinin sayfanın son anlamlı güncellemesini yansıtmasını önerir. Bu alanı her deployment'ta döndürmek yerine içerik kaynağındaki değişikliği temsil edecek şekilde yönetin.

Kötü uygulama

// Her build'de bütün URL'ler taze görünür.
return posts.map((post) => ({
  url: `https://intent.com.tr/blog/${post.slug}`,
  lastModified: new Date(),
}));

Sorun JavaScript sözdizimi değil, veri kaynağıdır: new Date() içerikte değişiklik olduğunu kanıtlamaz. Google'ın crawl budget rehberi sitemap veya geçici sinyallerin sayfaları otomatik olarak indeksletmediğini vurgular.

Intent'in gerçek sitemap modeli

Intent'te sitemap src/app/sitemap.ts dosyasındaki Next.js Metadata Sitemap API ile üretilir. Blog kaynaklarında gerçek bir updatedAt alanı bulunmadığı için mevcut doğru fallback yayın frontmatter'ındaki post.date değeridir:

const posts = getPostSlugs();

const blogUrls = posts.map((slug) => {
  const post = getPostBySlug(slug.replace(/\.md$/, ""));

  return {
    url: `https://intent.com.tr/blog/${post.slug}`,
    lastModified: new Date(post.date),
    changeFrequency: "monthly" as const,
    priority: 0.8,
  };
});

Bu repository'de olmayan bir updatedAt alanını uydurup deployment zamanını kullanmayın. İleride doğrulanabilir updatedAt eklenirse öncelik updatedAt, sonra publishedAt/date, en son hiç tarih göndermemek olmalıdır. Tarih source-of-truth'tan gelmiyorsa sahte güncellik göndermektense lastmod alanını çıkarın. Next.js sitemap metadata dokümanı Date veya string değerlerini destekler.

Sitemap'te ne olmalı?

Sitemap yalnızca indekslenmesini istediğiniz canonical URL'leri içermelidir. Redirect kaynakları, 404/410 URL'leri, noindex sayfalar ve parametreli alternatifler dahil edilmemelidir. Intent'in mevcut sitemap'i blog yazılarını, gerçek pagination sayfalarını, hub içeriklerini ve araçları route kaynaklarından üretir; her eklenen URL için 200, canonical ve iç link durumu ayrıca kontrol edilmelidir.

Canlı çıktıyı doğrulama

curl -fsSL https://intent.com.tr/sitemap.xml -o /tmp/intent-sitemap.xml
rg -n "<loc>|<lastmod>" /tmp/intent-sitemap.xml | head -n 30
curl -sS -o /dev/null -D - https://intent.com.tr/blog/canonical

Her loc için status 200, redirect yok, self-canonical ve source-of-truth ile açıklanabilir lastmod bekleyin. XML'i tarayıcıdan açmak biçimi görmeye yarar; Search Console Sitemap raporu dosyanın alınıp işlenmesini izlemek içindir. Bu kontroller lastmod'un kesin crawl veya index garantisi verdiği anlamına gelmez.

lastmod'u doğru kullanmanın ölçütü “tüm tarihler bugün mü?” değil, her tarihin gerçek bir içerik değişikliğine bağlanabilmesidir. Sitemap, içerik yayın kaydının özetidir; deployment günlüğü değildir.