Arkadaşlar son birkaç aydır bir eticaret sitesi projesi ile uğraşıyorum biraz zahmetli oldu ama ayağa kaldırdık sonunda.. Bu süre içinde wp'deki birçok minik saçmalığa da çözüm buldum normalde bunların her biri için bir eklenti kuruyoruz ama hiç gerek yokmuş.. Sizlerle de paylaşmak istiyorum.. Aşağıdaki kodların tamamını child temanızın functions.php dosyasına ekleyerek sorunsuz kullanabilirsiniz.
Sizlerinde kullandığı basit pratik kodlar varsa paylaşın herkes yararlansın
WP-ADMIN ERİŞİMİNİ TEK IP DIŞINDA YASAKLA
Aşağıdaki kod wp-admin adresinize yazdığınız ip dışında hiçbir ip adresinin erişememesini sağlar.. Diğer kişiler otamatik sitenin ana sayfasına yada yazdığınız url'ye yönlendirilir. 127.0.0.1 yazan yeri kendi bilgisayarınızın ip adresi ile değiştirin, alttaki url'yi de istediğiniz url ile bitti gitti. Saşhsen statik ip kullanmama rağmen bu kodu kullanıyorum sitedeki tüm login denemeleri bir anda son buldu. Olurda IP adresiniz değişirse pleks ya da cpanelden girip kendi ip adresinizi güncellersiniz olur biter.
/* WP-Admin IP Erişimini Blokla */
function block_all_user_except_allow() {
$allow = array("127.0.0.1");
if (!in_array ($_SERVER['REMOTE_ADDR'], $allow))
{
header("Location: https://www.siteadresiniz.com.tr");
die();
}
add_action('login_init', 'block_all_user_except_allow');
}WP-ADMIN LOGIN ATTEMPS
Eğer wp-admine ip erişimi yasağı vermediyseniz bu kod işinize yarayabilir.. Aşağıdaki kod wp-admine 2 hatalı giriş denemesi sonrası kişiyi 60 samiye boyunca yasaklayacaktır.
$attempt_login, 60); buradaki 60 değeri saniye cinsinden yasak süresidir.
if ($attempt_login[$ip] > 2) { buradaki 2 değeri maksimum kaç deneme yapabileceğini ifade eder.
/* WP-Admin Login Attempts */
function limit_login_attempts_idc() {
$attempt_login = get_transient('attempt_login');
if (false === $attempt_login) {
$attempt_login = array();
}
$ip = $_SERVER['REMOTE_ADDR'];
$attempt_login[$ip] = isset($attempt_login[$ip]) ? $attempt_login[$ip] : 0;
$attempt_login[$ip]++;
set_transient('attempt_login', $attempt_login, 60);
if ($attempt_login[$ip] > 2) {
wp_die("You have exceeded the maximum number of login attempts.");
}
}
add_action( 'wp_login_failed' ,'limit_login_attempts_idc');RESIM EK SAYFALARINI ANA SAYFAYA YÖNLENDİRME
Wordpress'e eklediğiniz her image dosyasının kendi url'si dışında bir de ek sayfa url'si vardır. Sanırım wp'nin en saçma salak özelliklerinden biri bu olsa gerek. Çoğu kullanıcı bu sayfanın varlığından bile haberdar değildir ama gün gelir çok başınızı ağrıtır. Bu sayfaları özellikle yorum saldırıları için kullanmayı çok severler.. Aşağıdaki kod resim ek sayfalarına erişmeye çalışıldığında kişiyi direk ana sayfaya yönlendirir.
/* Disable Image Attachment Page */
function redirect_attachment_page() {
if (is_attachment()) {
wp_redirect(home_url());
exit;
}
}
add_action('template_redirect', 'redirect_attachment_page');TUM IMAGE YORUMLARINI KAPAT
Çoğumuz eklentiler aracılığı ile image dosyalarının yorumlarını kapatırız ama eklentiye hiç gerek yok aşağıdaki kod ile site genelindeki tüm görseller yoruma kapatılır.
/** Tüm image yorumlarını kapat */
function disable_image_comments( $open, $post_id ) {
$post_type = get_post_type( $post_id );
if ( 'attachment' === $post_type ) {
return false;
}
return $open;
}
add_filter( 'comments_open', 'disable_image_comments', 10 , 2 );