Her sabah onlarca "harika yazı, şu siteye de bakın" yorumu, iletişim formundan gelen anlamsız mesajlar ve hiç tanımadığınız sitelerden geri bağlantı (pingback) bildirimleri... WordPress sitesi olan hemen herkes bir noktada spam ile karşılaşır. Spam yalnızca can sıkmaz; onaylanmış tek bir bağlantılı yorum ziyaretçilerinizi zararlı sitelere yönlendirebilir, binlerce bekleyen yorum veritabanınızı şişirir ve yönetim panelini yavaşlatır.

Bu rehberde önce WordPress'in hiçbir eklenti kurmadan sunduğu Tartışma ayarlarını, ardından Akismet ve Antispam Bee gibi wordpress.org'da yayımlanan spam eklentilerini, Cloudflare Turnstile ve reCAPTCHA gibi doğrulama araçlarını, yorumları tamamen kapatmayı ve XML-RPC üzerinden gelen pingback spamini adım adım ele alıyoruz. Ayarlara dokunmadan önce sitenizin güncel bir yedeğini aldığınızdan emin olun.

Spam neden gelir ve nereden girer?

Spam neden gelir ve nereden girer? Yazıların yorum formu, Pingback ve trackback, İletişim ve kayıt formları, xmlrpc.php

Spam gönderen botlar genellikle tek tek siteleri seçmez; yorum formu açık olan her WordPress sitesini otomatik olarak dener. Amaçları çoğunlukla bağlantı bırakmak, kimlik avı sayfalarına trafik çekmek ya da formların açık olup olmadığını test etmektir. Bir WordPress sitesinde spam şu kapılardan girer:

Giriş noktasıNasıl görünürİlk önlem
Yazıların yorum formuYorumlar ekranında bekleyen veya onaylanmış alakasız yorumlarTartışma ayarları, spam eklentisi
Pingback ve trackback"Diğer bloglardan" gelen kısa bağlantı bildirimleriBağlantı bildirimlerini kapatmak
İletişim ve kayıt formlarıForm eklentisinin gelen kutusuna düşen sahte mesajlar, sahte üyeliklerTurnstile veya reCAPTCHA, honeypot
xmlrpc.phpSunucu kayıtlarında xmlrpc.php adresine yoğun POST istekleriPingback yöntemini kaldırmak, WAF kuralı

Adım 1: Tartışma ayarlarını sıkılaştırın

İlk ve ücretsiz savunma hattı Ayarlar > Tartışma ekranıdır. Aşağıdaki seçenek adları WordPress'in resmî Türkçe çevirisinde göründüğü şekildedir. Değişikliklerden sonra sayfanın altındaki Değişiklikleri kaydet düğmesine basmayı unutmayın.

"Bir yorum görüntülenmeden önce" bölümü

  • Yorum el ile onaylanmalı: İşaretlerseniz hiçbir yorum siz onaylamadan yayımlanmaz. Az yorum alan kurumsal siteler için en güvenli seçenektir.
  • Yorum yazarının önceden onaylanmış bir yorumu olmalı: WordPress kurulumunda varsayılan olarak açıktır. Daha önce yorumu onaylanmış bir e-posta adresinden gelen yorumlar doğrudan yayımlanır, diğerleri onay bekler. Bu ayarı kapatmayın.

"Yorum denetimi" bölümü

  • Bir yorum denetime alınmadan önce izin verilecek bağlantı sayısı: Varsayılan değer 2'dir. Spam yorumların ortak özelliği çok sayıda bağlantı içermesidir; değeri 1 yaparsanız birden fazla bağlantı içeren her yorum onay kuyruğuna düşer.
  • Altındaki metin kutusuna yazdığınız sözcükler, yorumun içeriğinde, yazar adında, adresinde, e-postasında, IP adresinde veya tarayıcı kimliğinde geçerse yorum onay kuyruğuna alınır. Her satıra bir sözcük veya IP adresi yazın.

"İzin verilmeyen yorum anahtarları" bölümü

Bu kutu bir öncekine benzer ama daha serttir: eşleşen yorum onay kuyruğuna değil, doğrudan Çöpe gönderilir. WordPress 7.1.4 kaynak koduna göre çöp kutusu kapalıysa (EMPTY_TRASH_DAYS sıfırsa) yorum istenmeyen olarak işaretlenir. Bu alanın eski adı "Comment Blacklist" idi; WordPress 5.5 ile ayar adı blacklist_keys yerine disallowed_keys oldu ve arayüzde "Disallowed Comment Keys" adını aldı.

text
casino
bahis
viagra
203.0.113.45
@ornek-spam-alanadi.com

"Diğer yorum ayarları" ve varsayılan yazı ayarları

  • Yorum yazarının adını ve e-posta adresini yazması zorunlu olsun: Varsayılan olarak açıktır, açık bırakın.
  • Kullanıcıların yorum yapabilmesi için hesap ve oturum açması zorunlu olsun: Yalnızca üyelerin yorum yapmasını istediğiniz sitelerde kullanın. Kayıt formunuz açıksa bu kez sahte üyelikler gelebilir.
  • Eski yazılarda yorumlar otomatik olarak kapatılsın: Botlar çoğunlukla eski ve iyi sıralanan yazıları hedefler. Örneğin 30 veya 60 gün sonra yorumları kapatmak spami belirgin şekilde azaltır; önceden onaylanmış yorumlar görünmeye devam eder.
  • Diğer bloglardan yeni yazılar için bağlantı bildirimleri (geri bağlantılar ve geri izlemeler) yapılabilsin. Bu kutuyu kaldırırsanız yeni yazılarınız pingback ve trackback kabul etmez. Günümüzde bu bildirimlerin büyük kısmı spamdir.

Adım 2: Yorumlar ekranını düzenli temizleyin

Yorumlar ekranında Bekleyen, İstenmeyen ve Çöpte sekmeleri bulunur. Bekleyen yorumları gözden geçirirken gerçek yorumları Onayla, spamleri İstenmeyen olarak işaretle ile ayırın. Bir spam eklentisi kullanıyorsanız "istenmeyen" işaretlemeniz eklentinin öğrenmesine de yardımcı olabilir. İstenmeyen sekmesindeki İstenmeyenleri boşalt düğmesi biriken spamleri kalıcı olarak siler; yanlışlıkla spam sayılan gerçek bir yorum varsa önce İstenmeyen değil ile kurtarın.

Binlerce spam birikmişse ve paneliniz yavaşlıyorsa, sunucunuzda WP-CLI kullanabiliyorsanız istenmeyen yorumları komut satırından da silebilirsiniz. Komutu çalıştırmadan önce veritabanı yedeği alın:

bash
# İstenmeyen olarak işaretlenmiş yorumların kimliklerini listele ve sil
wp comment delete $(wp comment list --status=spam --format=ids) --force

Adım 3: Bir spam eklentisi seçin

Adım 3: Bir spam eklentisi seçin: Akismet Anti-spam: Spam Protection, Antispam Bee, Simple CAPTCHA with Cloudflare Turnstile

Tartışma ayarları elle bakım gerektirir. Trafik arttıkça otomatik filtreleme yapan bir eklenti işinizi kolaylaştırır. Aşağıdaki eklentilerin hepsi wordpress.org eklenti dizininde yayımlanır; bilgiler 1 Kasım 2026 tarihinde eklenti sayfalarından kontrol edildi. Kurmadan önce eklenti sayfasındaki "Last updated" (son güncelleme) tarihine ve WordPress sürüm uyumluluğuna kendiniz de bakın.

EklentiNasıl çalışırDikkat edilecek nokta
Akismet Anti-spam: Spam ProtectionYorumları ve desteklenen form gönderimlerini Akismet'in merkezi spam veritabanına göndererek kontrol eder.API anahtarı ister. Eklenti sayfasına göre anahtar kişisel bloglar için ücretsizdir; işletme ve ticari siteler için ücretli abonelik gerekir. Yorum verisi harici bir hizmete gönderildiği için aydınlatma metninizde belirtin.
Antispam BeeCAPTCHA kullanmadan, kişisel veriyi üçüncü taraf hizmete göndermeden yerel kurallarla (yorum süresi, Gravatar, dil, yerel spam veritabanı vb.) çalışır.Eklenti sayfasına göre ücretsiz ve reklamsızdır. Ayarlarını sitenize göre gözden geçirin; örneğin dil filtresi Türkçe dışı gerçek yorumları da etkileyebilir.
Simple CAPTCHA with Cloudflare TurnstileGiriş, kayıt, şifre sıfırlama, yorum formları ile WooCommerce ve birçok form eklentisine Cloudflare Turnstile doğrulaması ekler.Cloudflare hesabında ücretsiz bir Turnstile widget'ı oluşturup site anahtarlarını girmeniz gerekir.

Aynı işi yapan iki spam eklentisini birlikte çalıştırmayın; hem yanlış pozitif oranı artar hem de hangi eklentinin yorumu engellediğini anlamak zorlaşır. Eklenti kurduktan sonra sitede beklenmedik bir sorun çıkarsa eklenti çakışması rehberimizdeki adımlarla nedeni bulabilirsiniz.

Adım 4: Formları honeypot ve CAPTCHA ile koruyun

Yorum formu dışında iletişim, kayıt ve sipariş formları da spam alır. Burada iki yaklaşım vardır:

  • Honeypot (bal küpü): Formun içine insanların görmediği gizli bir alan eklenir. Botlar her alanı doldurma eğiliminde olduğu için bu alan doluysa gönderim reddedilir. Ziyaretçiye ek bir adım yüklemez. Birçok form eklentisi bu seçeneği kendi ayarlarında sunar; eklentinizin belgesine bakın.
  • CAPTCHA ve görünmez doğrulama: Google reCAPTCHA veya Cloudflare Turnstile gibi hizmetler gönderimin insan tarafından yapıldığını doğrulamaya çalışır. Cloudflare'in plan sayfasına göre Turnstile'ın ücretsiz planı kişisel siteler ve küçük-orta işletmeler için uygundur, sınırsız doğrulama içerir ve hesap başına 20 widget ile sınırlıdır. Turnstile kullanmak için sitenizin DNS'ini Cloudflare'e taşımanız gerekmez.

Doğrulama hizmetleri ziyaretçi tarayıcısından üçüncü taraf bir sunucuya istek gönderir. Kişisel verilerin korunması açısından gizlilik veya çerez metninizde bu hizmeti belirtmeniz iyi bir uygulamadır.

Adım 5: XML-RPC üzerinden gelen pingback spamini durdurun

WordPress pingback bildirimlerini xmlrpc.php dosyasındaki pingback.ping yöntemiyle kabul eder. Tartışma ayarlarında bağlantı bildirimlerini kapatmak yeni yazılar için yeterlidir, ancak bot istekleri yine de xmlrpc.php adresine gelmeye devam edebilir.

Burada sık yapılan bir yanlışa dikkat edin: internette çokça önerilen xmlrpc_enabled filtresi XML-RPC'yi tamamen kapatmaz. WordPress kaynak kodundaki açıklamaya göre bu filtre yalnızca kimlik doğrulama gerektiren XML-RPC yöntemlerini etkiler; pingback gibi kimlik doğrulama gerektirmeyen yöntemler çalışmaya devam eder. Pingback yöntemini kaldırmak için xmlrpc_methods filtresi kullanılır:

php
<?php
// Pingback yöntemini XML-RPC listesinden kaldırır.
add_filter( 'xmlrpc_methods', function ( $methods ) {
    unset( $methods['pingback.ping'] );
    return $methods;
} );

Bu kodu ana temanızın functions.php dosyasına eklerseniz tema güncellemesinde kaybolur. Alt tema (child theme) veya küçük bir özel eklenti kullanın. Jetpack veya mobil uygulama gibi XML-RPC kullanan bir araç kullanıyorsanız xmlrpc.php dosyasını sunucu düzeyinde tamamen engellemeden önce bu araçların çalışmaya devam edip etmeyeceğini kontrol edin.

Adım 6: Yorumlara ihtiyacınız yoksa tamamen kapatın

Adım 6: Yorumlara ihtiyacınız yoksa tamamen kapatın: Ayarlar > Tartışma, Mevcut yazılarda yorumları kapatmak için Yazılar listesinde toplu düzenlemeyi..., Bunu elle yönetmek...

Kurumsal tanıtım sitelerinde yorum özelliği çoğu zaman hiç kullanılmaz. Bu durumda en kesin çözüm yorumları kapatmaktır:

  • Ayarlar > Tartışma ekranında "İnsanlar yeni yazılara yorum yapabilsin." ve bağlantı bildirimleri kutularını kaldırın.
  • Mevcut yazılarda yorumları kapatmak için Yazılar listesinde toplu düzenlemeyi kullanın; aynı işlemi Sayfalar için de yapın.
  • Bunu elle yönetmek istemiyorsanız wordpress.org'daki Disable Comments eklentisi yorumları gönderi türüne göre ya da site genelinde kapatır; eklenti sayfasına göre yorum menülerini gizler, X-Pingback başlığını kaldırır ve XML-RPC ile REST API üzerinden yorum gönderimini de devre dışı bırakabilir.

Yorumları kapatmak mevcut onaylı yorumları silmez; yalnızca yeni yorum alınmasını engeller. Bekleyen spamleri ayrıca temizlemeniz gerekir.

Sık yapılan hatalar

  • Spam yorumları "nasılsa görünmüyor" diye İstenmeyen klasöründe aylarca biriktirmek. Akismet gibi eklentilerin kendi temizleme ayarlarını kullanın veya düzenli boşaltın.
  • "İzin verilmeyen yorum anahtarları" listesine kısa ve genel sözcükler yazıp gerçek yorumları sessizce çöpe göndermek.
  • Aynı anda iki veya üç spam eklentisi çalıştırmak.
  • Ana temanın functions.php dosyasına kod ekleyip tema güncellemesinde kaybetmek.
  • Spam sonrası site garip davranmaya başladıysa (bilmediğiniz yönetici hesapları, yönlendirmeler) bunu spam sanmak. Bu belirtiler sitenin ele geçirildiğini gösterebilir; hack sonrası WordPress güvenlik sertleştirme yazımıza göz atın.

Sık Sorulan Sorular

Akismet ücretsiz mi?

Akismet'in wordpress.org eklenti sayfasına göre API anahtarı kişisel bloglar için ücretsizdir; işletme ve ticari siteler için ücretli abonelik sunulur. Siteniz bir şirkete aitse veya ürün ve hizmet satıyorsa ücretsiz anahtar koşullarına uymayabilir. Güncel planları Akismet'in kendi sitesinden kontrol edin.

Spam yorumlar SEO'ma zarar verir mi?

Onaylanıp yayımlanan spam yorumlar sayfanıza alakasız ve zararlı sitelere bağlantı ekler; bu hem ziyaretçi güvenini hem de sayfa kalitesini olumsuz etkiler. Onay kuyruğunda veya İstenmeyen klasöründe duran yorumlar ziyaretçilere gösterilmez. Asıl önemli olan spamin yayımlanmamasıdır.

İzin verilmeyen yorum anahtarlarına IP eklemek işe yarar mı?

Kısmen. Botlar sık sık IP değiştirdiği için tek tek IP engellemek sürdürülebilir değildir. Sürekli aynı IP'den gelen bir saldırgan varsa işe yarar, ancak yoğun bot trafiğinde eklenti veya WAF kuralı çok daha etkilidir.

Turnstile mı reCAPTCHA mı seçmeliyim?

İkisi de çalışır. Turnstile'ın ücretsiz planı çoğu küçük site için yeterlidir ve ziyaretçiye çoğu zaman görünmez. Hangi form eklentisini kullandığınıza bakın: seçtiğiniz WordPress eklentisinin o formu desteklemesi, hizmetin kendisinden daha belirleyicidir.

Pingback'leri kapatırsam başka sitelerin bana verdiği bağlantılar kaybolur mu?

Hayır. Pingback yalnızca başka bir sitenin size bağlantı verdiğini yorumlar bölümünde bildirir. Bağlantının kendisi diğer sitede durmaya devam eder; kapattığınızda yalnızca bu bildirimleri almazsınız.

Yazılım, eklenti ve hizmet adları sahiplerine aittir. Bu yazı bağımsız bir teknik rehberdir; adı geçen şirketlerle bayilik veya ortaklık ilişkisi bulunduğu anlamına gelmez.

İlgili içerikler: WordPress eklenti çakışması ve beyaz ekran · WordPress otomatik güncelleme ayarları · WordPress yedekleme ve geri yükleme · WordPress admin paneline girilemiyor · Cloudflare WAF ve bot koruması · Bot trafiğini tespit etme · Hack sonrası WordPress güvenlik sertleştirme