网站地图    收藏   

主页 > 后端 > wordpress教程 >

WordPress站点出现404错误时邮件通知管理员 - Word

来源:自学PHP网    时间:2014-11-28 23:42 作者: 阅读:

[导读] 一个比较好玩的功能就是当我们网站出现了错误时就邮箱通知管理员了,将下面的代码添加到你所用的WordPress主题的 404 php 文件的顶端即可...

WordPress站点出现404错误时邮件通知管理员

一个比较好玩的功能就是当我们网站出现了错误时就邮箱通知管理员了,将下面的代码添加到你所用的WordPress主题的 404.php 文件的顶端即可.

如果你的主机支持mail()函数或者设置了SMTP发送邮件,总之就是能够发送邮件就行,一会去查看你设置的WordPress站点的管理员邮箱,你就会发现404通知邮件,可能在垃圾箱哦.

实例代码如下:

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

否则我们按下面方法来操作,代码如下:

  1. <?php // WP 404 ALERTS 
  2.  
  3. // set status 
  4. header("HTTP/1.1 404 Not Found"); 
  5. header("Status: 404 Not Found"); 
  6.  
  7. // site info 
  8. $blog  = get_bloginfo('name'); 
  9. $site  = get_bloginfo('url') . '/'
  10. $email = get_bloginfo('admin_email'); 
  11.  
  12. // theme info 
  13. if (!emptyempty($_COOKIE["nkthemeswitch" . COOKIEHASH])) { 
  14.      $theme = clean($_COOKIE["nkthemeswitch" . COOKIEHASH]); 
  15. else { 
  16.      $theme_data = wp_get_theme(); 
  17.      $theme = clean($theme_data->Name); 
  18.  
  19. // referrer 
  20. if (isset($_SERVER['HTTP_REFERER'])) { 
  21.      $referer = clean($_SERVER['HTTP_REFERER']); 
  22. else { 
  23.      $referer = "undefined"
  24. // request URI 
  25. if (isset($_SERVER['REQUEST_URI']) && isset($_SERVER["HTTP_HOST"])) { 
  26.      $request = clean('http://' . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]); 
  27. else { 
  28.      $request = "undefined"
  29. // query string 
  30. if (isset($_SERVER['QUERY_STRING'])) { 
  31.      $string = clean($_SERVER['QUERY_STRING']); 
  32. else { 
  33.      $string = "undefined"
  34. // IP address 
  35. if (isset($_SERVER['REMOTE_ADDR'])) { 
  36.      $address = clean($_SERVER['REMOTE_ADDR']); 
  37. else { 
  38.      $address = "undefined"
  39. // user agent 
  40. if (isset($_SERVER['HTTP_USER_AGENT'])) { 
  41.      $agent = clean($_SERVER['HTTP_USER_AGENT']); 
  42. else { 
  43.      $agent = "undefined"
  44. // identity 
  45. if (isset($_SERVER['REMOTE_IDENT'])) { 
  46.      $remote = clean($_SERVER['REMOTE_IDENT']); 
  47. else { 
  48.      $remote = "undefined"
  49. // log time 
  50. $time = clean(date("F jS Y, h:ia", time())); 
  51.  
  52. // sanitize 
  53. function clean($string) { 
  54.      $string = rtrim($string);  
  55.      $string = ltrim($string);  
  56.      $string = htmlentities($string, ENT_QUOTES);  
  57.      $string = str_replace("n""<br>"$string); 
  58.  
  59.      if (get_magic_quotes_gpc()) { 
  60.           $string = stripslashes($string); 
  61.      }  
  62.      return $string
  63.  
  64. $message =  
  65.      "TIME: "            . $time    . "n" .  
  66.      "*404: "            . $request . "n" .  
  67.      "SITE: "            . $site    . "n" .  
  68.      "THEME: "           . $theme   . "n" .  
  69.      "REFERRER: "        . $referer . "n" .  
  70.      "QUERY STRING: "    . $string  . "n" .  
  71.      "REMOTE ADDRESS: "  . $address . "n" .  
  72.      "REMOTE IDENTITY: " . $remote  . "n" .  
  73.      "USER AGENT: "      . $agent   . "nnn"
  74.  
  75. mail($email"404 Alert: " . $blog . " [" . $theme . "]"$message"From: $email");  
  76. ?> 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论