Blog

Kendi Sitemizi Düzeltirken Öğrendiğimiz SEO Dersleri

Sitemizi bir arama motorunun okuduğu gibi okumak için birkaç gün harcadık ve düzeltmeye değer altı şey bulduk. Her sayfa iki SSS bloğu tanımlıyordu, Google küçük resim olarak dekoratif bir arka plan parıltısını kullanıyordu, bir dizi şablon sayfası cevaplamadıkları aramalarda sıralanıyordu ve sitenin yeni bir bölümü staging ortamında kendi kenar sunucumuz tarafından engelleniyordu. Hiçbiri dramatik değildi. Hepsi sessizce görünürlüğümüze mal oluyordu.

Site tek bir paragrafta

mythex.ai, derleme sırasında önceden render ettiğimiz tek sayfalık bir uygulamadır: bir betik her rotayı dolaşır, her biri için statik bir HTML dosyası yazar ve sayfanın başlığını, açıklamasını ve yapılandırılmış verisini (arama motorlarına bir sayfanın ne olduğunu anlatan JSON-LD bloğu; bkz. yapılandırılmış veri nedir) ekler. Aşağıdakilerin çoğu bu önceden render adımında yaşar, çünkü tarayıcının gerçekten okuduğu HTML budur.

1. Her sayfa kendini SSS sayfası ilan ediyordu

Belirti. HTML şablonumuz, yapılandırılmış verisinde URL'si /faq adresine işaret eden site çapında bir FAQPage bloğu taşıyordu. Önceden render adımı ise her sayfanın kendi FAQPage bloğunu bunun üzerine ekliyordu. Böylece sitedeki her sayfa iki tane gönderiyordu ve gizlilik politikamız Google'a kendisinin SSS sayfası olduğunu söylüyordu.

Neden önemli? Google, sayfa başına en fazla bir FAQPage bekler. Başka bir yeri gösteren ikinci bir tane, yalnızca göz ardı edilmekle kalmayıp sayfanın işaretlemesinin değerinin düşürülmesine yol açabilecek türden bir şeydir.

Çözüm. Genel blok kaldırıldı. Her sayfanın SSS işaretlemesi artık tek bir yerden geliyor. Bu yer, tüm soru listesinden işaretlemeyi oluşturan /faq sayfasının kendisi de dahil. SSS'si olmayan sayfalar artık hiçbir SSS bildirmiyor, bu da dürüst cevap. Ayrıca, herhangi bir sayfa yeniden birden fazla FAQPage taşırsa önceden render adımı derlemeyi başarısız kılıyor. Yalnızca birinin aklında duran bir kural çiğnenir; derleme tarafından uygulanan bir kural çiğnenmez.

2. Google bizim için yanlış resmi kullanıyordu

Belirti. Arama sonuçlarında Mythex küçük resmi, paylaşım kartımız yerine ana sayfa kahramanımızın arkasındaki yumuşak nabız gibi atan parıltıydı. Yani dekoratif bir arka plan görseli.

Neden oldu? Google'a hangi resmin bir sayfayı temsil ettiğini hiç söylemedik, o da bulduğu birini seçti.

Çözüm. Aynı sorunun iki yüzü:

  • Sayfanın resmini belirtin. Ana sayfada artık primaryImageOfPage alanı paylaşım kartımıza işaret eden bir WebPage düğümü var ve önceden render edilen her sayfanın yapılandırılmış verisi kendi resmini taşıyor (sayfanın paylaşım resmi ya da varsayılan resim).
  • Dekorasyonu gizleyin. Arka plan görsellerine artık robots.txt içinde izin verilmiyor ve noindex, noimageindex başlığıyla sunuluyor. Böylece görsel aramadan ve küçük resimlerden uzak duruyorlar.

3. Arama motorları bizi yalnızca logomuzla tanıyordu

Organization işaretlememizde bir ad, bir logo ve birkaç sosyal bağlantı vardı. Yani yalnızca marka bilgisi, başka bir şey yoktu. Arama motorları bir şirketin bilgi panelini kayıt tipi gerçeklerden oluşturur. Bu yüzden ticari sicil belgemizdeki bilgileri ekledik: resmi unvan, kuruluş tarihi, kurucu ve kayıtlı adres. Telefon numarasını bilerek dışarıda bıraktık.

4. Şablon sayfaları yanlış soruyu cevaplıyordu

Belirti. Search Console, hiç tıklama almadan gösterim toplayan üç şablon sayfası gösteriyordu. Biri "içerik stratejisti portfolyosu" ve varyantları için, biri "en iyi italyan restoranı web sitesi tasarımı" için, biri de "agile board" etrafındaki bir küme için sıralanıyordu. Bu aramaların yarısında "ücretsiz" kelimesi vardı. Konumlar 20'lerin ortasından 50'lere kadar uzanıyordu.

Neden? Her sayfa, sorulandan farklı bir soruyu cevaplıyordu. İyi bir italyan restoranı tasarımının nasıl göründüğünü görmek isteyen biri, onlara bir oluşturucu satan bir sayfaya düşüyordu.

Çözüm. Üçünün her birinde artık ürün için değil arama için yazılmış bir bölüm, insanların yazdığı kelimelerle bir başlık ve açıklama ve zaten yayınladıkları işaretlemeyi hak eden SSS'ler var.

Aynı commit daha sessiz bir sorunu da düzeltti. "İlgili şablonlar" bloğu, bir kategorideki ilk dört şablonu alıyordu. Böylece her portfolyo şablonu aynı dört portfolyoya işaret ediyordu ve kategorinin geri kalanında hiç iç bağlantı yoktu. Bunun yerine alt kategoriye göre sıralanmış bir halka koyduk: artık her şablon sayfası tam olarak dört giden ve dört gelen bağlantı alıyor. Önceden render edilen HTML de bu bağlantıları artık yazdırıyor. Önceden bunlar yalnızca JavaScript çalıştıktan sonra var oluyordu ve bir tarayıcı bunu hiç çalıştırmayabilir.

5. Yeni sayfalar yayınlandığı anda Bing'e haber vermek

Google, bir URL değiştiğinde arama motorlarına ping atmak için kullanılan bir protokol olan IndexNow'u yok sayar. Bing, Yandex ve Seznam bunu kullanır ve ChatGPT araması da Bing'in dizinini okur. Yapay zeka asistanlarının bulamadığı bir yapay zeka uygulama oluşturucusu, belirli bir türde başarısızlıktır.

Bariz yaklaşım, her yayında tüm site haritasını göndermektir. Ama anahtar bu şekilde sınırlandırılır ve çoğu yayın bir arama motorunun önemsediği hiçbir şeyi değiştirmez. Bu yüzden bir betik, sitenin şu anda sunduğu site haritasını yeni derlenenle karşılaştırır ve yalnızca farkı gönderir.

Bunu çalıştıran iki ayrıntı var:

  • Yayınlamadan önce anlık görüntü alın. Temel çizgi, yeni derleme canlıya çıkmadan önce yakalanmalıdır. Sonradan "canlı" site haritası zaten yeni olan olur ve her fark boş döner.
  • Şimdilik yalnızca yeni sayfalar. Site haritamızda lastmod tarihleri yok, bu yüzden betik yeni sayfaları duyurur ama yeniden yazmaları duyurmaz. Her URL'ye derleme tarihini basmak, her yayında tüm sitenin değiştiğini işaretlerdi. Tam da kaçınmaya çalıştığımız spam bu.

Yalnızca production yayınlarında çalışır ve asla derlemeyi başarısız kılmaz. Çalıştığı noktada site zaten canlıdır ve bir arama motoru pingi kırmızı bir yayına değmez.

6. Kendi kenar sunucumuz "bulunamadı" diyordu

/ai sayfalarını başlattığımızda (bunlar hakkında daha fazlası için her iş türü için bir açılış sayfası yazısına bakın), staging ortamı, statik barındırıcı hepsini sorunsuz sunarken hepsi için "Not found" gösteriyordu.

Pazarlama barındırıcılarımızın önündeki servis yalnızca izin listesindeki yolları iletir. Diğer her şey sert bir 404 alır. /ai yeniydi ve listede değildi. /ai ve /ai/* ekledik ve bunların geçtiğini doğrulayan bir test yazdık. Küçük bir hata, ama tam da kimse fark etmeden yeni bir bölümü tarayıcılara görünmez kılan türden.

Bundan çıkardıklarımız

  • Bir tarayıcının okuduğu HTML'i okuyun. Bunların çoğu bir tarayıcıda görünmezdi ve önceden render edilmiş dosyada açıktı.
  • SEO kurallarını derleme kontrollerine dönüştürün. "Sayfa başına bir FAQPage" artık hatırlanmıyor, zorunlu kılınıyor.
  • Arama motorlarına ne demek istediğinizi söyleyin. Sizi hangi resmin ya da hangi bilgilerin temsil ettiğini söylemezseniz, tahmin ederler.
  • Search Console, insanların hangi soruyu sorduğunu söyler. Tıklamasız gösterimler genellikle sayfanın farklı bir soruyu cevapladığı anlamına gelir.
  • Her şeyi değil, farkları gönderin. Yalnızca değişeni ping atmak, hız sınırlarının doğru tarafında kalmanızı sağlar.

Kendi yaptığınız bir site için aynısını yapıyorsanız, yapay zeka ile yapılmış web siteleri için SEO ve Google Search Console kurulumu rehberlerimiz temelleri kapsıyor.

Mythex · Pricing · Yapay zekayla her şeyi yapın · Web sitesi ve uygulama şablonları · Mythex karşılaştırmaları · Yapay zekayla uygulama geliştirme sözlüğü · Yapay zekayla uygulama geliştirme için ücretsiz araçlar · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)