WordPress’de 404 Hatasında E-Posta Alma

Merhaba arkadaşlar bugün sizlere 404 hatası alan ziyaretçilerin hakkında nasıl anında haberdar olacağımızı anlatacağım.

404 hata sayfası, web sayfamızda herhangi bir sayfaya girildiğinde o sayfaya erişilemiyorsa kullanıcıyı karşılayan sayfadır.

Bu hatayı sizin sayfanızda alan kullanıcılardan haberdar olmak istiyorsanız vereceğim kodları temanızındaki 404.php sayfasına ekleyebilirsiniz.

WordPress kullananlar için adım adım bu işlemleri anlatacağım.

“Görünüm” kategorisinden “Düzenleyici” seçeneğine tıklıyoruz.
“Görünüm” kategorisinden “Düzenleyici” seçeneğine tıklıyoruz.

<?php

// set status
header("HTTP/1.1 404 Not Found");
header("Status: 404 Not Found");

// site info
$blog = get_bloginfo('name');
$site = get_bloginfo('url') . '/';
$email = get_bloginfo('admin_email');

// theme info
if (!empty($_COOKIE["nkthemeswitch" . COOKIEHASH])) {
 $theme = clean($_COOKIE["nkthemeswitch" . COOKIEHASH]);
} else {
 $theme_data = wp_get_theme();
 $theme = clean($theme_data->Name);
}

// referrer
if (isset($_SERVER['HTTP_REFERER'])) {
 $referer = clean($_SERVER['HTTP_REFERER']);
} else {
 $referer = "undefined";
}
// request URI
if (isset($_SERVER['REQUEST_URI']) && isset($_SERVER["HTTP_HOST"])) {
 $request = clean('http://' . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
} else {
 $request = "undefined";
}
// query string
if (isset($_SERVER['QUERY_STRING'])) {
 $string = clean($_SERVER['QUERY_STRING']);
} else {
 $string = "undefined";
}
// IP address
if (isset($_SERVER['REMOTE_ADDR'])) {
 $address = clean($_SERVER['REMOTE_ADDR']);
} else {
 $address = "undefined";
}
// user agent
if (isset($_SERVER['HTTP_USER_AGENT'])) {
 $agent = clean($_SERVER['HTTP_USER_AGENT']);
} else {
 $agent = "undefined";
}
// identity
if (isset($_SERVER['REMOTE_IDENT'])) {
 $remote = clean($_SERVER['REMOTE_IDENT']);
} else {
 $remote = "undefined";
}
// log time
$time = clean(date("F jS Y, h:ia", time()));

// sanitize
function clean($string) {
 $string = rtrim($string);
 $string = ltrim($string);
 $string = htmlentities($string, ENT_QUOTES);
 $string = str_replace("n", "<br />", $string);

 if (get_magic_quotes_gpc()) {
 $string = stripslashes($string);
 }
 return $string;
}

$message =
 "TIME: " . $time . "n" .
 "*404: " . $request . "n" .
 "SITE: " . $site . "n" .
 "THEME: " . $theme . "n" .
 "REFERRER: " . $referer . "n" .
 "QUERY STRING: " . $string . "n" .
 "REMOTE ADDRESS: " . $address . "n" .
 "REMOTE IDENTITY: " . $remote . "n" .
 "USER AGENT: " . $agent . "nnn";

mail($email, "404 Alert: " . $blog . " [" . $theme . "]", $message, "From: $email"); 

?>

"Şablonlar" kısmından 404.php adlı şablona tıklayıp aşağıda verdiğim kodları yapıştırıyoruz.
“Şablonlar” kısmından 404.php adlı şablona tıklayıp verdiğim kodları yapıştırıp “Dosyayı Güncelle” butonuna tıklıyoruz.
Artık 404 sayfasıyla karşılaşan kullanıcıları anlık olarak Mail adresinizden takip edebilirsiniz.
Artık 404 sayfasıyla karşılaşan kullanıcıları anlık olarak mail adresinizden takip edebilirsiniz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.