WordPress yorum alanına basit bir matematik sorusu doğrulama eklemek, spam yorumları önemli ölçüde azaltabilir. Bu işlem için functions.php
dosyasına özel bir kod ekleyerek veya Custom Snippets eklentisi kullanarak yapılabilir.
✅ Hedef: Kullanıcı yorum gönderirken basit bir matematik sorusu (toplama, çıkarma vb.) çözmeli ve doğru yanıt vermezse yorum gönderimi engellenecek.
🎯 Yöntem 1: functions.php ile Manuel Ekleme
1️⃣ Tema Dosyasına Kod Ekleme
functions.php
dosyanıza aşağıdaki kodu ekleyin:
// Yorum alanına matematik doğrulama sorusu ekle
function motosikletsitesi_math_captcha_field() {
$num1 = rand(1, 10); // 1 ile 10 arasında rastgele sayı
$num2 = rand(1, 10);
$result = $num1 + $num2;
// Soruyu session'da sakla
echo '<p><label for="math_captcha">Lütfen şu işlemi yapın: ' . $num1 . ' + ' . $num2 . ' = ?</label>';
echo '<input type="text" name="math_captcha" id="math_captcha" size="3" required></p>';
echo '<input type="hidden" name="math_captcha_result" value="' . $result . '">';
}
// Matematik alanını yorum formuna ekle
add_action('comment_form_after_fields', 'motosikletsitesi_math_captcha_field');
// Yorum gönderiminde matematik doğrulama kontrolü
function motosikletsitesi_verify_math_captcha($commentdata) {
if (!is_user_logged_in()) {
$captcha_result = isset($_POST['math_captcha_result']) ? intval($_POST['math_captcha_result']) : 0;
$user_answer = isset($_POST['math_captcha']) ? intval($_POST['math_captcha']) : 0;
if ($user_answer !== $captcha_result) {
wp_die('Hata: Yanlış cevap! Lütfen matematik sorusunu doğru cevaplayın.');
}
}
return $commentdata;
}
// Yorum doğrulaması
add_filter('preprocess_comment', 'motosikletsitesi_verify_math_captcha');
2️⃣ Kod Ekleme Talimatları
- Admin Paneline Giriş Yapın:
Görünüm → Tema Düzenleyici → functions.php
- Kodları Yapıştırın: Kodları
functions.php
dosyasının sonuna ekleyin. - Kaydet ve Yayınla: Dosyayı kaydedin ve test edin.
🎉 Sonuç:
Kullanıcılar yorum yaparken örneğin “5 + 3 = ?” gibi bir soru görecek ve doğru cevabı girmeden yorum gönderemeyecekler.
🎯 Yöntem 2: Eklenti ile Yapma (Kolay Yöntem)
Eğer kodlarla uğraşmak istemiyorsanız, aşağıdaki eklentilerden birini kullanabilirsiniz:
- Math Captcha for Comments
🔗 Link: Math Captcha for WordPress- Basit matematik soruları ekler.
- Yorum formuna, giriş ve kayıt ekranlarına entegre olur.
- Advanced noCAPTCHA & Invisible Captcha
- Google reCAPTCHA ve matematik doğrulama seçeneği sunar.
- Yorum, kayıt, şifre sıfırlama gibi tüm formlarda kullanılabilir.
🛠️ Eklenti Kurulum Talimatları
- Admin Paneline Git:
Eklentiler → Yeni Ekle
- Eklenti Ara: Yukarıda verilen eklentilerden birini arayın.
- Yükle ve Etkinleştir: Eklentiyi yükledikten sonra “Etkinleştir” butonuna basın.
- Ayarları Yapılandır: Yorum formuna captcha eklemek için ayarlardan ilgili seçeneği açın.
Daha İleri Seviye İçin Google reCAPTCHA
Spam botlarını engellemek için Google reCAPTCHA da entegre edebilirsin. Eğer bununla ilgilenirsen, ayrıca detaylı adımlar veririm.
📚 reCAPTCHA Avantajları:
- Botları %99 oranında engeller.
- Kullanıcılar yalnızca “Ben robot değilim” kutucuğuna tıklar.