WordPress admin giriş hatası tek bir hata değildir; birkaç farklı senaryo vardır: şifre doğru olduğu halde giriş ekranına geri atma, 403/401, “cookies are blocked” uyarısı, wp-admin beyaz ekran, yönlendirme döngüsü (too many redirects), ya da kullanıcı adı/şifre doğru ama “Hata: geçersiz kullanıcı” gibi. Burada geleneksel yöntemle ilerlersin: önce cookie ve URL, sonra eklenti, sonra tema, en son veritabanı.
Giriş ekranı sürekli yenileniyorsa veya “şifre doğru ama geri atıyor” ise ilk şüphe cookie ve site URL uyumsuzluğudur. Özellikle SSL geçişlerinde home/siteurl http/https karışır. wp-config.php içinde site URL’leri zorla tanımlayarak döngüyü kırabilirsin.
// wp-config.php
define('WP_HOME', 'https://siteadresin.com');
define('WP_SITEURL', 'https://siteadresin.com');
define('FORCE_SSL_ADMIN', true);
Bu yöntem eski ama etkilidir. Ardından tarayıcıda cookie/cache temizlersin. Ayrıca wp-admin ve wp-login.php erişiminde farklı domain (www vs non-www) kullanmak da cookie’yi bozabilir. Bu yüzden tek bir kanonik domain seçmek şarttır.
Şifre unutulduysa veya reset maili gitmiyorsa, en temiz yöntem phpMyAdmin üzerinden şifre güncellemektir. Burada WordPress’in eski MD5 yöntemi yaygındır; WordPress ilk girişte zaten kendi hash’ine çevirir.
-- phpMyAdmin: wp_users tablosu (prefix farklı olabilir)
UPDATE wp_users
SET user_pass = MD5('YeniGucluSifre123!')
WHERE user_login = 'admin';
Eğer “admin panel açılmıyor, 500 veriyor” gibi durum varsa eklenti çakışması çok muhtemeldir. wp-content/plugins klasör adını değiştirerek tüm eklentileri devre dışı bırakıp giriş denersin. Açılıyorsa suçlu eklentiyi tek tek geri açarak bulursun. Bu yöntem yıllardır değişmez; en hızlı teşhistir.
/wp-content/plugins -> /wp-content/plugins.off
Bazen güvenlik eklentileri (WAF, limit login, 2FA) yanlış IP algısıyla seni kilitler. Bu durumda eklentiyi devre dışı bırakmak giriş kapısını açar. Sonra doğru whitelist ve ayar yapılır.
Bir diğer klasik problem .htaccess veya sunucu kuralıdır. Özellikle wp-admin’e basic auth, IP restriction, ModSecurity kuralı eklenmiş olabilir. .htaccess’i geçici olarak sıfırlayıp test etmek teşhiste yardımcı olur. WordPress’in standart .htaccess’ini geri koymak genelde güvenlidir.
# .htaccess (WordPress varsayılan)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
“Cookies are blocked” uyarısında ise wp-config.php içine COOKIE_DOMAIN ile oynamak bazen gerekir ama genelde doğru çözüm yanlış URL’leri düzeltmek ve tarayıcı eklentilerini kapatmaktır. Ayrıca siteyi Cloudflare arkasında çalıştırıyorsan, esnek SSL ayarı (Flexible) yüzünden admin cookie’leri patlayabilir; doğru yaklaşım Full (Strict) kullanmaktır.
Admin giriş sorunlarında aceleyle “yeni WordPress kurayım” yaklaşımı acemiliktir. Düzgün teşhisle çoğu sorun 15 dakikada çözülür. Loglara bak, URL’yi sabitle, eklentiyi izole et, gerekirse DB’den şifreyi düzelt. Bu sırayla gidersen gereksiz yıkım olmaz.