ارسال گزارش خطای 404 به ایمیل مدیر سایت

حتما شما دوستان می‌دونید که خطای 404 وردپرس یکی از خطاهای معروف در وب سایت ها است و تقریبا این خطا برای وب سایت شما میتواند بسیار خطرناک باشد و باید سایت خود را از این خطاها محفوظ نمایید، حال هر چقدر که شما از این خطاها جلوگیری کنید، باز هم ممکن است برای شما اتفاق بیفتد ، پس شما نیاز دارید که از یک طریق به شما این تعداد خطاها اعلام شده و اطلاع رسانی شود تا در جریان باشید.

هدف این آموزش در دکتر وردپرس این است که به شما کمک کنیم تا از تعداد خطای 404 وب سایت خود باخبر باشید و سریعا آن ها را رفع کنید.

ارسال گزارش خطای 404 به ایمیل مدیر سایت

ارسال گزارش خطای 404 به ایمیل مدیر سایت
همانطور که میدانید اگر برای وب سایت شما به تعداد دفعات زیادی این خطا ایجاد شود گوگل امتیاز وب سایت شما را کاهش میدهد و سبب ایجاد مشکلات فراوان برای شما خواهد شد پس باید شما این تعداد خطای 404 را کنترل کنید اما برای اطلاع از ایجاد این خطاها میتوانید ترتیبی اتخاذ کنید تا در صورت بروز این خطا یک ایمیل برای شما ارسال شود.

به منظور ارسال گزارش خطای 404 به ایمیل مدیر سایت باید از قطعه کدی استفاده کنید که به صورت زیر است و ان را در فایل function.php قالب وردپرس خود قرار دهید:

<?php

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

// site info
$blog  = get_bloginfo('نام شما');
$site  = get_bloginfo('آدرس وی سایت شما') . '/';
$email = get_bloginfo('ایمیل شما');

// 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"); 

?>

خب بهتر است دوستان عزیز در انتهای آموزش به سه نکته زیر توجه کنید:

1- شما دوستان باید اطلاعات خود را در قسمت فارسی نوشته های کد فوق قرار دهید
2- زمانی که دیگر نیازی به این ویژگی در وب سایت خود نداشتید باید کد را به صورت کامل پاک کنید
3- دریافت نسخه پشتیبان از قالب وردپرس پیش از قرار دادن این قطعه کد را فراموش نکنید

این آموزش هم در این قسمت به پایان رسید. در صورت وجود سوال و مشکلی در بخش دیدگاه ها پاسخ گوی شما عزیزان هستیم. موفق باشید.

5/5 - (1 امتیاز)
ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.