X

SEO için WordPress Robots.txt’inizi En İyi Şekilde Kullanın

WordPress robots.txt dosyanızı optimize etmek istiyor musunuz? Robots.txt dosyasının neden SEO’nuz için önemli olduğunu bilmiyor musunuz? Bu makalede, WordPress robots.txt dosyanızı SEO için nasıl optimize edebileceğinizi ve robots.txt dosyasının önemini anlamanıza yardımcı olacağını göstereceğiz.

Yakın bir zamanda, bir takipçimiz bize WordPress için robots.txt dosyası gerekip gerekmediğini ve öneminin ne olduğunu sordu. Bizde Burhan arkadaşımız için bu soruyu cevapladık. Sitenizin robots.txt dosyası, sitenizin genel SEO performansında önemli bir rol oynamaktadır. Temel olarak arama motorlarıyla iletişim kurmanıza ve sitenizin hangi bölümlerinin dizine eklemelerini gerektiğini bildirmelerine izin verir.

Gerçekten bir Robots.txt Dosyasına İhtiyacım Var mı?

Site dizini altında robots.txt dosyasının olmaması, arama motorlarının web sitenizi taramasına ve dizine eklemesine engel olmaz. Bununla birlikte, oluşturmanız şiddetle tavsiye edilir. Sitenizin XML site haritasını arama motorlarına göndermek istiyorsanız, arama motorlarının Google Web Yöneticisi Araçları’nda belirtmediğiniz sürece botlar XML site haritanızı robots.txt üzerinden arayacaktır.

Sitenizde bir robots.txt dosyası yoksa derhal bir tane oluşturmanızı şiddetle öneriyoruz.

Robots.txt dosyası nerede? Robots.txt dosyası nasıl oluşturulur?

Robots.txt dosyası genellikle sitenizin kök klasöründe bulunur. Sitenize bir FTP programı kullanarak bağlanmanız veya görüntülemek için barındırma panelinizden cPanel veya Plesk gibi dosya yöneticisi kullanarak düzenlemeniz gerekecektir.

Bu, normal bir metin dosyasına benzer ve Not Defteri gibi düz metin düzenleyicisi ile de açabilirsiniz.

Sitenizin kök dizininde bir robots.txt dosyası yoksa, her zaman bir tane oluşturabilirsiniz. Tek yapmanız gereken, bilgisayarınızda yeni bir metin dosyası oluşturup robots.txt olarak kaydedin. Sonra, sitenizin kök klasörüne yükleyin.

Robots.txt dosyası nasıl kullanılır?

Robots.txt dosyası biçimi aslında oldukça basittir. İlk satır genellikle kullanıcı aracısını belirtir. Kullanıcı aracı aslında iletişim kurmaya çalıştığınız arama botunun adıdır. Örneğin, Googlebot veya Bingbot. Tüm botlara talimat vermek için yıldız * kullanabilirsiniz.

Bir sonraki satır arama motorları için İzin Ver veya İzin Verme yönergeleri ile birlikte gelir; bu nedenle, hangi bölümlerin dizine eklenmesini istediğinizi ve hangilerinin dizine eklenmesini istemediğinizi dikkatli seçin.

Örnek bir robots.txt dosyasına bakalım:

User-Agent: *
Allow: /wp-content/uploads/
Disallow: /wp-content/plugins/
Disallow: /readme.html

WordPress için bu örnek robots.txt dosyasında, tüm botlara resim yükleme dizinini  arama dizinlerine eklemelerini söyledik.

Sonraki iki satırda WordPress eklentileri dizinini ve readme.html dosyasını dizinlerini arama dizinlerine eklememesini söyledik.

SEO için Robots.txt dosyasını optimize etme

Web yöneticileri için yönergelerde Google, webmasterlara düşük kaliteli içeriği gizlemek için robots.txt dosyası kullanmamalarını önerir. Google’ın kategorinizi, tarihini ve diğer arşiv sayfalarını dizine eklemesini durdurmak için robots.txt dosyası kullanmayı düşünüyorsanız akıllıca bir seçim olmayabilir.

Unutmayın robots.txt’in amacı botlara sitenizde taradıkları içerikle ilgili ne yapılacağını öğretmektir. Bu, botların web sitenizi taramasını durdurmaz.

Diğer WordPress eklentileri, arşiv sayfalarınızda nofollow ve noindex gibi meta etiketler eklemenize izin verir. WordPress SEO eklentisi de bunu yapmanıza izin verir. Arşiv sayfalarınızın deindexed olmasını istediğinizi söylemiyoruz, ancak bunu yapmak isterseniz, bunu yapmanın doğru yolu budur.

WordPress giriş sayfası, yönetici dizini veya kayıt sayfasını robots.txt dosyasına eklemenize gerek yoktur, çünkü giriş ve kayıt sayfalarında noindex etiketi meta etiketi olarak WordPress’e eklenmiştir.

Robots.txt dosyanızdaki readme.html dosyasına izin vermemenizi öneririz. Bu Benioku dosyası, WordPress’in hangi sürümünü kullandığınızı anlamaya çalışan birisi tarafından kullanılabilir.

Öte yandan, birisi belirli bir sürümü kullanarak WordPress sitelerini bulmak için kötü amaçlı bir sorgu yürütüyorsa, bu izin vermeme etiketi sizi bu toplu saldırılardan koruyabilir. Site güvenliğiniz için dikkat etmenizi öneririz.

WordPress eklenti dizinini de devre dışı bırakabilirsiniz. Birisi, toplu bir saldırı için yararlanılacak belirli bir açık eklenti aradıysa, sitenizin güvenliğini güçlendirecektir.

XML Site Haritanızın Robots.txt Dosyasına Eklenmesi

Yoast’ın WordPress SEO eklentisini veya XML site haritanızı oluşturmak için başka bir eklenti kullanıyorsanız, eklentiniz otomatik olarak sitemap’inizle ilgili satırları robots.txt dosyasına eklemeye çalışacaktır.

Ancak başarısız olursa, eklentiniz XML Site Haritalarınıza olan bağlantıyı gösterecek ve bu URL’yi robots.txt dosyanıza manuel olarak ekleyebilirsiniz:

Sitemap: http://www.siteadresi.com/post-sitemap.xml
Sitemap: http://www.siteadresi.com/page-sitemap.xml

İdeal bir Robots.txt Dosyası nasıl olmalıdır?

Dürüst olmak gerekirse, birçok popüler blog, çok basit robots.txt dosyalarını kullanmaktadır. İçeriği, belirli sitenin ihtiyaçlarına göre değişir:

User-agent: *
Disallow:

Sitemap: http://www.siteadresi.com/post-sitemap.xml
Sitemap: http://www.siteadresi.com/page-sitemap.xml

Bu robots.txt dosyası, tüm botlara tüm içeriği dizine eklemesini söyler ve sitenin XML site haritalarına bağlantıları sağlar.

İşte bir robots.txt dosyasının başka bir örneği: Bu sefer WpGurme üzerinde kullandığımız:

User-Agent: *
Allow: /wp-content/uploads/
Disallow: /wp-content/plugins/
Disallow: /readme.html


Sitemap: https://wpgurme.com/post-sitemap.xml
Sitemap: https://wpgurme.com/page-sitemap.xml
Sitemap: https://wpgurme.com/category-sitemap.xml

Bu kadar. Bu makalenin, SEO için WordPress robots.txt dosyanızı nasıl optimize edeceğinizi öğrenmenize yardımcı olmasını umuyoruz. Aklınıza takılan tüm soruları yorum olarak bize yazmaktan çekinmeyin.

SEO için WordPress Robots.txt’inizi En İyi Şekilde Kullanın
4.7 (93.33%) 3 Oy verildi.

Yazının son düzenleme zamanı 19 Kasım 2017 19:29

Yorumları Göster (31)

  • Merhaba,

    Öncelikle faydalı ve güzel yazınız için teşekkür ederim.
    Soruma gelecek olur isek. Şöyle bir şey yapmaya çalışıyorum. Sitelerimin birinde mesela 200'e yakın yazı var. Yalnız yazı/post ve sayfaların/page ve ana sayfanın index almasını istiyorum. Yani ne resimler, ne etiket arşivi, ne tag, ne kategori arşivi gibi.

    Sitemin google index sayısını incelediğimde (site:siteadim.com gibi) 200 yazı olmasına rağmen gereksiz yere 2000 küsür index almış. Spama girmem an meselesi. O yüzden Google Console'dan tek tek url kaldır yapmak yerine, robots.txt dosyasını ona göre revize etmeye çalışıyorum.

    Mesela yukarıdaki bahsettiğim amaca yönelik, aşağıdaki kod yapısı uygun mudur ? Mantık hatası yaptığım yer var mı diye danışmak istedim.

    User-agent: *
    Disallow: /wp-admin/
    Disallow: /wp-content/plugins/
    Disallow: /readme.html
    Disallow: /refer/
    Disallow: /tag*/
    Disallow: /AnaKategori-adi*/

    Allow: /wp-admin/admin-ajax.php
    Sitemap: "http://www.site-adim.com/post-sitemap.xml"
    Sitemap: "http://www.site-adim.com/page-sitemap.xml"

    User-agent: Googlebot-Image
    Disallow: /

    Mesela "Disallow: /tag*/" yazıyor olmam, tüm tag'lerin indexlerini kaldırması için yeterli midir ? Tarama burayı ve indexleme gibi. (İndexlenmiş bu arada bu tag'lerin çoğu malesef.)

    Kategoriler için ise "Disallow: /AnaKategori-adi*/" yeterli midir ?

    Sitemin kategorilerini şu şekilde yapılandırmıştım çünkü. "AnaKategori-adi" en üst kategori adım. Bir nevi "Tüm kategoriler" in en tepesinde duruyor. Bu "AnaKategori-adi" kategorisinin altına diğer kategoriler açıldı. (AnaKategori-adi/Alt-kategori-adi-seviye-1/Alt-kategori-adi-seviye-2 gibi)
    O yüzden tüm kategori linklerinin başında site-ismi.com/AnaKategori-adi/ yer alıyor. Bu duruma göre "Disallow: /AnaKategori-adi*/" çözüm olmuş olur mu ?

    Yani google'a bir nevi şunu demek istiyorum. "Hacı bir hata yapıp tüm gerekli/gereksiz ne var ise sana indexlettim. Kusura bakma açgözlülüğüm için ve ben artık bu durumdan pişmanım, benim sadece yazılarımı ve sayfalarımı indexle, diğer ne var ne yok indexleme ve bırak peşimi. Eskiden indexlediklerini de zaman içersinde sil gözünü seveyim"

    En altdaki satır ise, Google images bot'larına da, "Sen de uzak dur hacı. Ben resim sitesi değilim ve resimler ile bulunmak istemiyorum" demek istiyorum.

    Yukarıdaki şablonum bu isteğimi karşılar mı ? Eksik bıraktığım veya fazlalık olarak yazdığım bir yer var mıdır ?

    Biraz uzun bir yorum oldu, kusura bakmayın.

    • Merhaba, ek olarak sadece her kategoriyi tek tek eklemenizde fayda var Disallow: /cat1/ Disallow: /cat2/ gibi bazen engelleseniz dahi arama motoru botları site içerisinde gezerken sayfaları indeks sırasına alabiliyor.

  • Cevap için teşekkürler.
    Fakat dediğiniz gibi ise, o zaman tag'ler için de aynı şeyi yapmam mı gerekir ?

    Bir de "Disallow: /tag*/" mi yapmak gerekir yoksa "Disallow: /tag/" mi.
    Yani * koyulmaya gerek var mıdır ? "Disallow: /tag/" yaptığımızda "/tag/" ve devamını tarama anlamına da geliyor mu ?

    Kategoriler için önerizi dikkate alıp, tek tek ekleyeceğim. Zaten 15-20 tane kategori mevcut. Tek bir kere elle girilebilir.

    • Ben açıkçası tag olayına karşıyım. Eskiden Google tag bağlantılarına önem veriyordu, kullanımını anahtar kelime bazında kullanılması kötü sonuçlar doğurdu. Bu yüzden şuan Google çarpanı olarak tag önemsenmeyen bir hal aldı. Sitenizin içeriğini hazırlarken arama motorlarını yerine kullanıcı deneyimine yönelmenizi tavsiye ederim. Eşleşen içerikler üreterek yazılarınız arasında bağlar kurmanızı tavsiye ederim. Son olarak "Disallow: /tag/" eklemeniz yeterli olacaktır.

      Site içi linkleme üzerine bir makale yazmanın vaktidir. :) güzel bir konu için fikir verdiğin için teşekkür ederim.

      • Dediğiniz gibi ben de karşıyım bu Tag/etkiet olayına. Bir blogumda hunharca tag kullanmıştım. Bilinçsizlik/tecrübesizlik/cahillik vs. Şimdi ise yaptığım bu hatayı site yayında iken yavaş yavaş google index'lerinden geri çekmeye çalışıyorum.

        İndex'ler silindiğini gördükten sonra da, sayfadan tag'ları kaldıracağım. (Mysql'den silerim.) Şimdi silersem 404'ler ile uğraşmak zorunda kalırım. Her Tag'e de 301 yönlendirmesine girmek benim için çok angarya bir iş.

        Özet olarak düşüncem, Tag'lerin yanlış kullanım sonucunda, sitenizi spam'a sokacağıdır. O yüzden zaten size bunları, robots.txt dosyasını kullanarak, botların taramasını engellemek ve index'lerini nasıl kaldırabilirim diye detaylarını sordum

        Cevaplarınız için teşekkürler.

        Evet bu konuda güzel ve uzun bir yazı yayınlayabilirseniz çok iyi olur.

  • Merhabalar sizin sitenizde olduğu gibi bende aynı şekle Robots dosyasını oluşturdum bir kaç bişey daha vardı console da engellenen url kaynakları bi anda yükseldi baya bi sonra eski dosyaya döndüm ve sorun çözüldü. Benim sormak istediğim engellenen kaynaklar olması seo açısından veya google açısından bir sorun teşkil eder mi

    • Engellediğiniz sayfa ve dosyalara göre SEO yapınıza etki edebilir. Aramalarda bulunmasını istemediğiniz içerikleri engellemeniz yeterlidir.

  • Hocam merhabalar, yazınıza bugün itibariyle ulaştım ve robot.txt dosyamı verdiğiniz dosya ile değiştirdim. Nedeni ise mobil uyumluluk testinde bazı sayfaların mobil uyumsuz çıkması ve aşağıdaki hataları vermesi;

    -Tıklanabilir öğeler birbirine çok yakın
    -İçerik, ekrandan geniş

    Umarım düzelir...

    • Saymış olduğunuz düzenlemeler temanız ile alakalı. Robots.txt ile bu hataları düzenlemeniz ne yazık ki mümkün değil.

  • Merhaba,
    Yazı için teşekkürler. Benim bir kaç sorum olacaktı.
    1. Ben wordpress de virtual robot.txt diye bir plugin ekledim. Oraya anlattığınız gibi kaldıracaklarımı ve izin verilecekleri ekledim. Bir de web master tools üzerinden de benzer şekilde eklemeler yapmıştım. Plugin ile web master tools üzerinden aynı işlemleri yapmış olmam sıkıntı yaratır mı?
    2. İlk aldığımda domain ismim faklıydı ve ben o domaine içerikler girmiştim. Sonra Domain adını değiştirdim. Ve var olan içerikleri sildim ve yeni içerikler girdim. Google a. sitemin url sini yazdığımda yeni domain adım ama slash işaretinden sonra eski içerik sayfa adı var. Tıklayınca açılmıyor. Ör: "www.sitem.com/istemedigimicerik/"
    Haliyle ben bunları google dan kaldırmak istedim.
    Disallow: /istemedigimicerik/ olarak girdim bunları hem plugine hem de web masters üzerinden. Ama bunu yapalı 1 haftadan çok oldu, hala google da bu istemediğim içerikleri görüyorum. Sebebi nedir sizce?

    • Son 2 aylık süre içerisinde Google üzerinde 301 yönlendirmeleri sorunlara sebep oluyor. Siz yapılması gereken tüm işlemleri tahminimce yapmış bulunuyorsunuz. Tavsiyem Redirections eklentisi kurarak 404 hatası aldığınız sayfaları anasayfa üzerine yada ilgili sayfaya yönlendirmenizdir.

  • Yazınızı okudum çok teşekkürler ve yazdıklarınızı uygulamadım.Fakat benim bir sorum olacak yoast seo aracından tüm arşivleri ve katagorileri kapattım ama seo açısından bir sıkıntı olur mu ? Yani anahtar kelime bakımından google da ilk sayfalarda çıkmama engel olurmu

    • Arşiv ve kategorileri kapatmanız sıralamada size sorun çıkarmaz. Ancak tavsiyem kategorilerin indeks alınabilir konumda bırakılmasıdır.

  • bu robotx sorun varmı soylermısınız

    User-agent: *
    Disallow: /cgi-bin/
    Disallow: /wp-admin/
    Disallow: /wp-includes/
    Disallow: /wp-content/
    Disallow: /archives/
    Disallow: /author
    Disallow: *?replytocom

    User-agent: Mediapartners-Google
    Allow: /
    Allow: /wp-content/uploads/
    User-agent: Googlebot-Image
    Allow: /wp-content/uploads/

    User-agent: Adsbot-Google
    Allow: /

    User-agent: Googlebot-Mobile
    Allow: /

    • Bir sorun görmüyorum ancak web sitesi adresinizde verdiğiniz site üzerinde robot.txt dosyasınız erişim dışı gibi gözüküyor.

  • merhaba hocm robot txt yazınız çok güzel olmuş . Googlede 87 hariç bırakıldı ve gönderilen no ındex işaretli uyarısı alıyoruz.no ındex dedıgı yerı bır turlu bulamadık .ayrıca 4 sunucu 5xx hatası var ..google ındxlemeyı ne kadar surede tamamlıyor kı beklemede denılıyor... ve sadece
    resimleri hariç bırakmak ısyıroum . resımler haric robot txt dosyası nasıl olmalı yardımcı olurmusnz ?

    • No-index değeri kullandığınız seo eklentisi üzerinden olabilir. Detaylı inceleme için Google Webmaster Tools üzerinden kapsam sorunlarına bir göz atmalısınız. Kapsam içerisinde index ve no-index olarak tanımlamaları Google gözünden değerlendirebilirsiniz.

  • Google tam acıklama yapmamış o konu hakkında .extra bilgiler mevcut degıl .çok araştırdım . Alttaki metin sizce robot txt ?
    User-agent: *
    Disallow: /wp-admin/
    Disallow: /readme.html
    Allow: /wp-admin/admin-ajax.php
    .........................sitemap_index.xml

    sizce bu ayarı herşeyi ındexleyıp resim harıc bırakmam ıcın yeterlımıdir

    • Hazırladığım kodları kendine göre düzenleyerek ekleyebilirsin;
      User-Agent: *
      Disallow: /wp-content/plugins/
      Disallow: /wp-content/uploads/
      Disallow: /wp-admin/
      Disallow: /readme.html

      Sitemap: siteadresi/post-sitemap.xml
      Sitemap: siteadresi/page-sitemap.xml

      Site adresi kısımlarını "http://siteadresi.com" veya "https://siteadresi.com/" şeklinde düzenlemelisin.

    • Sitenizde kullandığınız güvenlik eklentisi yada hosting firmanızın oluşturduğu bir kurala takılıyor olabilir.

Sitemizi geliştirmek üzere çerezler kullanıyoruz.