WordPress’te Schema Markup Kurulumu: Adım Adım Rehber 2026
Schema Markup, bir web sayfasındaki içeriğin ne anlama geldiğini arama motorlarına ve yapay zekâ tabanlı sistemlere makine tarafından okunabilir şekilde açıklayan yapılandırılmış veri standardıdır. Bir blog yazısının makale mi, bir sayfanın sık sorulan sorular bölümü mü, bir ürünün fiyatı ve stok durumu ne olduğunu düz metinden çıkarmak arama motorları için zor olabilir; Schema Markup bu bilgiyi açık ve standart bir formatta sunar. Bu rehberde WordPress sitenizde Schema Markup’ı eklenti ile, manuel JSON-LD ile ve kod üzerinden nasıl uygulayacağınızı, hangi şema türünü ne zaman kullanmanız gerektiğini ve sık yapılan hataları adım adım ele alıyoruz.
Schema Markup Nedir, Neden Önemli?
Schema Markup, Google, Bing, Yandex gibi arama motorlarının ortak kullandığı schema.org sözlüğüne dayanır ve genellikle JSON-LD formatında sayfaya eklenir. Arama motoru, bu yapılandırılmış veriyi okuduğunda sayfanın türünü (makale, ürün, tarif, etkinlik, sık sorulan sorular vb.) ve bu türe özgü temel bilgileri (yazar, tarih, fiyat, puan, süre gibi) doğrudan anlayabilir. Bu da hem klasik arama sonuçlarında zengin sonuç (rich result) gösterimini hem de yapay zekâ tabanlı arama motorlarının içeriği doğru özetlemesini kolaylaştırır.
Pratikte Schema Markup uygulamak, sayfanızın arama motorunda otomatik olarak üst sıraya çıkmasını garanti etmez; bunun yerine mevcut içeriğinizin daha doğru anlaşılmasını ve uygun olduğu durumlarda ek görsel unsurlarla (yıldızlı puanlama, uygun ürün veya içerik bilgileri gibi) sonuçlarda öne çıkmasını sağlar. Bu nedenle Schema Markup, içerik kalitesinin yerine geçen değil, onu tamamlayan teknik bir katman olarak değerlendirilmeli.
Schema Markup Nasıl Çalışır? Teknik Arka Plan
Schema Markup üç farklı formatta uygulanabilir: JSON-LD, Microdata ve RDFa. Günümüzde Google dahil çoğu arama motoru JSON-LD formatını önceliklendiriyor, çünkü bu format sayfanın görünür HTML yapısından bağımsız olarak <script> etiketi içinde tanımlanabiliyor; bu da hem eklenmesini hem de bakımını kolaylaştırıyor. Microdata ve RDFa ise doğrudan HTML etiketlerinin içine gömülüyor, bu yüzden tema değişikliklerinde bozulma riski daha yüksek. Bu nedenle bu rehberde önerilen tüm örnekler JSON-LD formatında.
JSON-LD, Google tarafından head veya body içinde okunabilir. wp_head, WordPress’te düzenli çıktı üretmek için kullanılabilir; head içinde olmak tek başına daha güçlü bir SEO sinyali değildir.
Schema Markup ile Zengin Sonuçlar Arasındaki İlişki
Google’ın zengin sonuç gösterimi, sayfada doğru şema bulunmasına bağlı ama tek başına yeterli değil; Google ayrıca içeriğin şemada belirtilen bilgiyle görünür şekilde eşleştiğini de kontrol ediyor. Örneğin FAQPage şeması eklenmiş ama sayfada o sorular görünür şekilde yer almıyorsa, arama motoru bu uyumsuzluğu tespit edip zengin sonucu göstermeyebilir. Bu yüzden şema eklerken “sayfada zaten var olan bilgiyi etiketleme” mantığıyla hareket etmek, sayfada olmayan bilgiyi yapay şekilde şemaya eklemekten çok daha güvenli bir yaklaşım.
WordPress’te Schema Markup Ekleme Yöntemleri
1. SEO Eklentisi ile Otomatik Ekleme
Rank Math ve Yoast gibi SEO eklentileri, Article, BreadcrumbList ve temel Organization şemalarını otomatik olarak ekler; FAQPage ve HowTo gibi şemaları ise genellikle içerik düzenleyicideki özel bloklar üzerinden manuel olarak yapılandırmanız gerekir. Bu yöntem, teknik bilgi gerektirmediği için çoğu site sahibi için en pratik başlangıç noktası.
2. Manuel JSON-LD ile Ekleme
Eklentinin desteklemediği özel bir şema türü kullanmanız gerekiyorsa, JSON-LD kodunu doğrudan sayfaya veya tema dosyasına ekleyebilirsiniz. Bu yöntem daha fazla kontrol sağlar ama JSON söz diziminde yapılan küçük bir hata şemanın tamamen geçersiz sayılmasına yol açabilir.
3. functions.php Üzerinden Kod ile Ekleme
Belirli bir yazı türü (custom post type) için tüm sayfalarda otomatik şema üretmek isteyen geliştiriciler, WordPress kancalarını (hooks) kullanarak şemayı dinamik şekilde oluşturabilir. Bu yaklaşım, çok sayıda benzer sayfası olan siteler (ürün kataloğu, tarif sitesi, etkinlik takvimi gibi) için ölçeklenebilir bir çözüm sunar.
Yöntem Karşılaştırma Tablosu
| Yöntem | Teknik Bilgi Gereksinimi | Esneklik | Bakım Kolaylığı |
|---|---|---|---|
| SEO eklentisi (Rank Math/Yoast) | Düşük | Orta | Yüksek |
| Manuel JSON-LD | Orta-Yüksek | Yüksek | Orta |
| functions.php ile dinamik üretim | Yüksek | Çok Yüksek | Geliştirici bağımlı |
Adım Adım Kurulum Rehberi
- Mevcut durumu tespit edin. Google Search Console’daki “Zengin Sonuçlar” raporunu kontrol ederek sitenizde hâlihazırda hangi şemaların tanındığını görün.
- SEO eklentinizin şema ayarlarını gözden geçirin. Rank Math kullanıyorsanız Genel Ayarlar > Şema panelinden varsayılan içerik türü şemasını (Article, Post gibi) doğrulayın.
- FAQPage örneğini yalnızca sözlüğü öğrenmek için değerlendirin; Google FAQ zengin sonucu beklemeyin. Rank Math’ta bu genellikle içerik düzenleyicideki “SSS” bloğu üzerinden otomatik yapılır; blok kullanılmıyorsa aşağıdaki gibi manuel JSON-LD eklenebilir.
- Şemayı doğrulama aracından geçirin. Yayınlamadan önce kodun geçerli olduğundan emin olun (bir sonraki bölümde detaylandırılıyor).
- Search Console’da izlemeye devam edin. Yayın sonrası birkaç hafta içinde zengin sonuç raporundaki hata ve uyarı sayısının azaldığını kontrol edin.
Manuel olarak bir SSS bölümü için JSON-LD eklemek isterseniz, aşağıdaki örnek yapıyı sayfanıza özel alan (custom field) veya kod ekleme eklentisi üzerinden yerleştirebilirsiniz:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Schema Markup ücretsiz mi?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Evet, schema.org standardı ve JSON-LD formatı ücretsizdir; ek maliyet yalnızca kullandığınız eklenti veya geliştirici hizmetinden kaynaklanabilir."
}
}
]
}
</script>
Belirli bir özel yazı türü (örneğin “rehber”) için Article şemasını otomatik üretmek isteyen geliştiriciler, functions.php dosyasına aşağıdakine benzer bir kanca ekleyebilir. Bu kod, mevcut wp_head çıktısına müdahale etmeden yalnızca ilgili yazı türünde çalışacak şekilde koşullu olarak tasarlanmış; bu sayede sitenin diğer sayfalarındaki mevcut şema üretimini (örneğin SEO eklentisinin ürettiği Organization şeması) etkilemiyor. Kod eklendikten sonra ilgili yazı türüne ait birkaç örnek sayfanın kaynağını kontrol ederek script bloğunun beklendiği gibi çıktı verdiğinden emin olunmalı.
<?php
// Ozel yazi turu icin otomatik Article semasi ekleme
add_action('wp_head', function () {
if (is_singular('rehber')) {
global $post;
$schema = [
'@context' => 'https://schema.org',
'@type' => 'Article',
'headline' => get_the_title($post),
'datePublished' => get_the_date('c', $post),
'dateModified' => get_the_modified_date('c', $post),
'author' => [
'@type' => 'Organization',
'name' => get_bloginfo('name'),
],
];
echo '<script type="application/ld+json">'
. wp_json_encode($schema, JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT)
. '</script>';
}
});
Rank Math ve Yoast Arasında Şema Yönetimi Farkları
Rank Math, şema seçimini eklenti panelinde görsel bir “Schema Generator” arayüzü üzerinden sunuyor; kullanıcı içerik türüne göre hazır şablonlardan (Article, Product, Recipe, Course gibi) birini seçip alanları doldurabiliyor. Yoast SEO ise daha çok arka planda otomatik şema üretimine odaklanıyor; manuel şema düzenleme seçenekleri Rank Math’a göre daha sınırlı, bu da teknik kontrolü artırmak isteyen kullanıcılar için bir dezavantaj olabilir. İki eklentiyi aynı anda aktif tutmak şema çakışmasına yol açabileceğinden, sitenizde yalnızca bir SEO eklentisinin şema üretimini yönetmesi öneriliyor.
Birden fazla JSON-LD script bloğu tek başına hata değildir; farklı nesneler veya tutarlı @id ilişkileri içerebilir. Aynı nesneye ait çelişen tarih, yazar veya URL değerlerini inceleyin. Devre dışı eklentinin otomatik kod üretmeye devam ettiğini varsaymayın; tema, özel kod ve önbelleği kontrol edin.
Hangi Şema Türünü Ne Zaman Kullanmalı?
- Article: Haber, blog yazısı ve rehber içerikleri için temel şema türü.
- FAQPage: Sayfada gerçekten görünür bir soru-cevap bölümü varsa kullanılmalı.
- HowTo: Numaralı, uygulanabilir adımlardan oluşan rehber içerikleri için uygundur.
- Product: E-ticaret sitelerinde fiyat, stok durumu ve ürün puanı bilgisi taşıyan sayfalarda kullanılır.
- BreadcrumbList: Sayfanın site hiyerarşisindeki konumunu göstermek için, özellikle derin kategori yapısına sahip sitelerde faydalıdır.
Sık Yapılan Schema Markup Hataları
1. Sayfada Olmayan Bilgiyi Şemaya Eklemek
Sayfada görünmeyen bir puan, fiyat veya soru-cevap bilgisini şemaya eklemek, arama motoru kurallarına aykırıdır ve zengin sonuç gösteriminin reddedilmesine yol açabilir. Çözüm: şema her zaman sayfada zaten görünen bilgiyi yansıtmalı.
2. Aynı Sayfada Çakışan Birden Fazla Şema Kullanmak
Hem eklentinin otomatik eklediği hem de manuel eklenen bir Article şeması aynı sayfada varsa, arama motoru hangisini dikkate alacağını belirlemekte zorlanabilir. Çözüm: yayın öncesi sayfa kaynağını kontrol edip yinelenen şema bloklarını temizleyin.
3. Geçersiz JSON Söz Dizimi
Eksik virgül veya kapanmamış parantez gibi küçük bir yazım hatası, şemanın tamamının geçersiz sayılmasına yol açar. Çözüm: her yayından önce doğrulama aracından geçirin.
4. Zorunlu Alanları Eksik Bırakmak
Schema.org sözlük tanımı ile Google’ın desteklediği zengin sonuç koşulları ayrı şeylerdir. Article belgelerinde zorunlu özellik listesi yerine önerilen özellikler bulunur. Türünüzün güncel Google belgesindeki koşulları kontrol edin.
5. Şemayı Bir Kez Ekleyip Bir Daha Kontrol Etmemek
Site güncellemeleri, eklenti değişiklikleri veya tema düzenlemeleri zamanla şemanın bozulmasına neden olabilir. Çözüm: Search Console’daki zengin sonuç raporunu düzenli aralıklarla (örneğin ayda bir) kontrol etmeyi alışkanlık haline getirin.
Schema Markup’ı Test Etme ve Doğrulama
Schema Markup Validator sözlük ve sözdizimini; Google Rich Results Test ise desteklenen zengin sonuçları kontrol eder. Hata ve öneri uyarıları farklıdır. Geçerli test sonucu görünüm garantisi vermez; içerik, taranabilirlik ve Google politikaları da değerlendirilir.
Şema doğrulaması, tek seferlik bir işlem değil; site genelinde şablon değişikliği yapıldığında (yeni tema, eklenti güncellemesi, özel alan yapısı değişikliği gibi) yeniden kontrol edilmesi gereken sürekli bir bakım kalemi olarak ele alınmalı. Bu noktada Schema Markup çalışmaları, daha geniş bir GEO (Generative Engine Optimization) stratejisinin teknik temel taşlarından birini oluşturuyor; çünkü yapay zekâ tabanlı arama motorları da içeriği anlamlandırırken aynı yapılandırılmış veriden faydalanıyor.
Paylaşımlı Hosting Ortamında Performans ve Bakım Notları
Hostinger gibi paylaşımlı hosting ortamında çalışan sitelerde, functions.php üzerinden dinamik şema üretimi yaparken dikkat edilmesi gereken bir performans notu var: her sayfa yüklemesinde veritabanından ek sorgu çekerek şema oluşturmak, özellikle yüksek trafikli sitelerde sayfa yükleme süresini artırabilir. Bu riski azaltmak için şema verisini sayfa içeriğiyle birlikte önbelleğe almak (object cache veya sayfa önbellekleme eklentisiyle) veya şemayı yazı kaydedilirken bir kez üretip özel alanda (custom field) saklamak, her istekte yeniden hesaplamaktan daha verimli bir yaklaşım. Redis object cache kullanan sitelerde bu tür hesaplanmış veriler doğrudan önbellek katmanından sunulabildiği için ek yük neredeyse sıfıra iniyor.
Bakım tarafında ise şema kodunun tema güncellemelerinden etkilenmemesi için doğrudan temaya değil, bir site-özel eklentisine (must-use plugin veya basit bir yardımcı eklenti) yazılması öneriliyor. Bu sayede tema değiştirildiğinde veya güncellendiğinde şema kodu kaybolmuyor; WordPress’te tema ve eklenti katmanlarını ayrı tutmak, uzun vadeli bakım kolaylığı sağlayan temel bir prensip.
Sayfalama ve Arşiv Sayfalarında Schema Markup
Kategori, etiket ve arşiv sayfaları gibi birden fazla içeriği listeleyen sayfalarda Article şeması yerine genellikle CollectionPage veya ItemList şeması daha uygun düşüyor; her arşiv sayfasına tek bir yazının Article şemasını kopyalamak, arama motorunu yanlış yönlendirebilir. Sayfalanmış (paginated) arşivlerde ise her sayfanın kendi canonical URL’sini doğru şekilde belirtmesi, şemanın tutarlılığı açısından da önemli; canonical etiketi yanlışsa, doğru şema bile arama motoru tarafından yanlış sayfaya atfedilebilir.
Kime, Hangi Durumda Schema Markup Öncelikli Olmalı?
Önceliği sayfanın gerçek türüne uygun Article, BreadcrumbList ve gerekiyorsa Product gibi işaretlemelere verin. HowTo zengin sonuçları kaldırıldı; FAQ zengin sonuçları da 7 Mayıs 2026’dan itibaren Google Arama’da gösterilmiyor. FAQPage/HowTo sözlükte bulunabilir, fakat bunları Google’da ek görünüm kazanma vaadiyle önermemek gerekir.
Sıkça Sorulan Sorular
Schema Markup eklemek sıralamayı doğrudan yükseltir mi?
Hayır. Schema Markup, arama motorunun içeriğinizi doğru anlamasına yardımcı olur ve zengin sonuç gösterimine olanak tanır; ancak tek başına sıralamayı garanti eden bir faktör değildir.
Rank Math ve Yoast hangi şemaları otomatik ekler?
Her iki eklenti de genellikle Article, Organization ve BreadcrumbList şemalarını otomatik ekler; FAQPage ve HowTo gibi türler için içerik düzenleyicideki özel bloğu kullanmanız gerekir.
Manuel JSON-LD eklemek güvenli mi?
Evet, doğru söz dizimiyle yazıldığında güvenlidir; ancak yayınlamadan önce mutlaka bir doğrulama aracından geçirilmesi öneriliyor çünkü küçük bir yazım hatası şemayı geçersiz kılabilir.
Aynı sayfada birden fazla şema türü kullanılabilir mi?
Evet, örneğin bir sayfa hem Article hem de FAQPage şemasını taşıyabilir; önemli olan şemaların birbirini çakıştırmaması ve sayfa içeriğiyle tutarlı olması.
Şema hatası sitenin arama motoru tarafından cezalandırılmasına yol açar mı?
Yanıltıcı yapılandırılmış veri, ilgili özelliğin gösterilmemesine veya yapılandırılmış veri için manuel işleme yol açabilir. Sonuç, ihlalin kapsamına bağlıdır; her hata için aynı yaptırım varsayılmamalıdır.
Şema değişikliklerinin etkisi ne kadar sürede görülür, ayrıca bir eklenti gerekir mi?
Değişikliklerin görünme süresi arama motorunun sayfanızı yeniden tarama sıklığına bağlı olarak değişir; Search Console üzerinden URL denetleme aracıyla yeniden tarama talep etmek süreci hızlandırabilir. Eklenti tarafında ise, zaten Rank Math veya Yoast gibi bir SEO eklentisi kullanıyorsanız temel şema türleri için ayrı bir eklentiye ihtiyacınız yok; özel şema türleri (Recipe, Course, Event gibi) veya çok sayıda özel yazı türü için otomasyon gerekiyorsa, özel bir şema eklentisi ya da yukarıdaki gibi bir kod çözümü daha uygun olabilir.




