ارسال هشدار از طریق ایمیل برای صفحه 404 وردپرس

ارسال هشدار از طریق ایمیل برای صفحه ۴۰۴ وردپرس

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

در این مطلب از بخش هک و کد های وردپرس روکش ما به شما نشان می دهیم که چگونه می توانید گزارش ارور های ۴۰۴ وردپرس را در ایمیلتان دریافت کنید.

این کار بسیار آسان است تنها کافی است تا کد زیر را در بالای فایل ۴۰۴.php قالب وردپرس خود اضافه کنید. اگر هم قالب شما این فایل را ندارد باید این فایل را بسازید و این کد را در بالای آن قرار دهید.

<?php // WP 404 ALERTS @ http://wp-mix.com/wordpress-404-email-alerts/

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

?>

حال باید اطلاعات شخصی خود را در خطوط ۸ تا ۱۰ وارد کنید. خط ۱۰ مهمترین مورد می باشد که باید ایمیلی که می خواهید گزارشات به آن ارسال شوند را مشخص کنید.
اگر هم خواستید گزارش صفحه ۴۰۴ را غیر فعال کنید می توانید کل کد را از فایل ۴۰۴.php حذف کنید یا اینکه تنها خط ۸۳ را با قرار دادن // قبل از آن به صورت کامنت در آورید.

دیدگاه کاربران

  1. jalal

    سلام
    چطور صفحه ۴۰۴ رو به وردپرس معرفی کنم و نتیجه جستجو وردپرس در صورت نبودن نتیجه صفحه ۴۰۴ نمایش داده شود
    مرسی

    • سعید شعبانی

      برای ساخت صفحه قالب صفحه ۴۰۴ باید یک فایل با نام ۴۰۴.php ایجاد کنید. برای نمایش صفحه ۴۰۴ در صورت نبودن نتیجه در زمان جستجو هم می تونید بعد از else فایل ۴۰۴ را به صورت زیر فراخوانی کنید.

      include(get_query_template('404'));
      

کاربر گرامی برای ارسال دیدگاه اگر عضو روکش هستید باید سایت شوید در غیر اینصورت باید عضو شوید.