1. Anasayfa
  2. Blog
  3. WordPress Kılavuzları

WordPress Parola Sıfırlamayı Devre Dışı Bırakma

WordPress Parola Sıfırlamayı Devre Dışı Bırakma

WordPress giriş sayfanızdan parola kurtarma seçeneğini (“Parolanızı mı unuttunuz” kısmını )devre dışı bırakmayı hiç düşündünüz mü? WordPress siteniz çok sayıda şifre sıfırlama isteği alıyorsa, ön uçtaki parola sıfırlama seçeneğini devre dışı bırakmak, WordPress site güvenliği için ekstra bir adım olacaktır. Bunu yaptığınızda, e-posta adresiniz ele geçirilmiş olsa bile kimse yeni bir şifre bağlantısı talep edemez. Bu da kullanıcı adınızı veya e-posta bilginizi bilen kötü niyetli kişilerin işini epey zorlaştırır. Peki, WordPress giriş panelinden şifre değiştirme-parola sıfırlama seçeneğini etkisizleştirmek ve tamamen devre dışı bırakmak sizce de harika olmaz mı?

1. functions.php ile Parola Sıfırlamayı Devre Dışı Bırakma

WordPress’in lostpassword_url filtresi üzerinden şifre sıfırlama sayfasını devre dışı bırakabilirsiniz. Bu işlemi gerçekleştirmek oldukça basit; yapmanız gereken tek şey aşağıdaki kodu functions.php dosyanızın sonuna ekleyip değişiklikleri kaydetmek.

  • WP yönetim paneliydeyken Görünüm>Tema Düzenleyici yolunu izleyin ve functions.php dosyasını açın. Aşağıdaki kodu kopyalayın ve dosyanın sonuna yapıştırıp kaydedin:
// Parola sıfırlamayı devre dışı bırak
function disable_password_reset() {
    return false;
}
add_filter( 'allow_password_reset', 'disable_password_reset' );

📌 Bu kod eklendiğinde kullanıcılar şifre sıfırlama linkini görseler bile işlem başarısız olacaktır.

2. “Parolanızı mı unuttunuz?” Linkini Gizleme

Eğer sadece giriş ekranındaki “Parolanızı mı unuttunuz?” linkini kaldırmak istiyorsanız, functions.php dosyanıza şu kodu ekleyin:

// Login sayfasından "Şifremi Unuttum" linkini kaldır
function remove_lostpassword_text ( $text ) {
if ($text == 'Lost your password?') {
$text = '';
}
return $text;
}
add_filter( 'gettext', 'remove_lostpassword_text' );

📌 Böylece kullanıcı linki göremeyecek, ama doğrudan URL’ye girmeyi bilen biri yine sıfırlamayı deneyebilir.

3. wp-login.php Üzerinden Yönlendirme

functions.php içine aşağıdaki kodu eklerseniz, şifre sıfırlama sayfasına erişmeye çalışanlar giriş ekranına yönlendirilir:

// Parola sıfırlama sayfasına erişimi engelle
function block_password_reset_page() {
if ( isset($_GET['action']) && $_GET['action'] === 'lostpassword' ) {
wp_redirect( wp_login_url() );
exit;
}
}
add_action( 'login_init', 'block_password_reset_page' );

4. Sadece Yöneticilerin Şifre Sıfırlamasına İzin Ver

Parola sıfırlamayı tamamen devre dışı bırakmak kullanıcı deneyimini zorlaştırabilir. Önerilen yöntem, tamamen kapatmak yerine sadece yönetici rollerine açık bırakmaktır. Bunun için de allow_password_reset filtresinde kullanıcı rolünü kontrol ederek daha esnek bir çözüm yapılabilir. Bu sayede normal kullanıcılar “Parolamı unuttum” özelliğini kullanamazken, adminler şifrelerini sıfırlayabilecekler.

Bu işlem için functions.php dosyanıza şu kodu ekleyin:

// Yalnızca yöneticiler için parola sıfırlamaya izin ver
function restrict_password_reset( $allow, $user_id ) {
$user = get_userdata( $user_id );

if ( in_array( 'administrator', (array) $user->roles ) ) {
return true; // Yöneticiler sıfırlayabilir
}

return false; // Diğer tüm roller için kapalı
}
add_filter( 'allow_password_reset', 'restrict_password_reset', 10, 2 );

Editör Notu: İçeriğimiz okuyucu desteğiyle finanse edilmektedir. Bu, bağlantılarımızdan bazılarına tıkladığınızda komisyon kazanabileceğimiz anlamına gelir.

Burada sadece teorik bilgiler değil, gerçek deneyimlere dayanan pratik çözümler var. Burada yol arkadaşı olacağız. Karmaşık konuları birlikte çözecek, teknik detayları birlikte aşacağız...

Yazarın Profili