cari
Rumahphp教程php手册在主题函数直接修改系统邮件通知

在主题函数直接修改系统邮件通知

Jun 06, 2016 pm 08:09 PM
temaSemak semulafungsisistemBawa sendirimaklumkanmel

修改wp自带的发送给管理员的评论通知邮件,不用动系统文件 原始方法: 修改系统文件wp-includes/pluggable.php中的 wp_notify_postauthor 函数 高端方法: 添加自定义function,挂钩到原函数 by小蝴蝶 相关的钩子: comment_notification_text 基本思路 function

修改wp自带的发送给管理员的评论通知邮件,不用动系统文件

  1. 原始方法: 修改系统文件wp-includes/pluggable.php中的wp_notify_postauthor函数
  2. 高端方法: 添加自定义function,挂钩到原函数 by小蝴蝶
  3. 相关的钩子: comment_notification_text
  4. 基本思路
  5. function xhd_mail2admin( $notify_message, $comment_id ) {
    //CODE
    }
    add_filter( 'comment_notification_text', 'xhd_mail2admin', 10, 2 );

进阶教程

实现效果: 增加了PR和IP归属地,对原有一些累赘的参数进行了删减,去掉了WHOIS,修改了查看评论的固定链接格式
首先扔一段pr查询解码的函数,具体原理见我以前写过的这篇欢迎访客之显示对方网站PR

function app_hash_url($url) {
$seed = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE.";
$hash = 0x01020345;
for ($i=0; $i<strlen ord>> 23) & 0x1FF) | $hash 
<p>然后是主代码</p>
<pre class="brush:php;toolbar:false"> 
function xhd_mail2admin( $notify_message, $comment_id ) {
	/* wp_notify_postauthor原有参数 */
	$comment = get_comment( $comment_id );
	$post    = get_post( $comment->comment_post_ID );
	$author  = get_userdata( $post->post_author );
	if ( $comment->user_id == $post->post_author )
		return false;
	if ( $post->post_author == get_current_user_id() )
		return false;
	if ( '' == $author->user_email )
		return false;
	$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
	/* ip归属地的api */
	$IPURL  = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='.$comment->comment_author_IP;
	$json = file_get_contents($IPURL);
	$json = json_decode($json, true);
	$json = $json["country"].$json["province"].$json["city"].$json["district"].$json["isp"];
	/* 邮件正文 */
	$notify_message  = sprintf( __( 'New comment on your post "%s"' ), $post->post_title ) . "\r\n";
	$notify_message .= sprintf( __('Author : %s '), $comment->comment_author ) . "\r\n";
	$notify_message .= sprintf( __('IP: %1$s ( %2$s) '), $json,  $comment->comment_author_IP ) . "\r\n";
	//如果担心调用IP归属地造成评论提交变慢,可以把上一行改成下一行,注释去掉
	//$notify_message .= sprintf( __('IP: %s '), $IPURL ) . "\r\n";
	$notify_message .= sprintf( __('E-mail : %s'), $comment->comment_author_email ) . "\r\n";
	$notify_message .= sprintf( __('网站: %s'), $comment->comment_author_url ) . "\r\n";
	/* PR */
	$domain1 = $comment->comment_author_url ;
	$domain=substr($domain1,7);
	$startUrl = "http://toolbarqueries.google.com/tbr?client=navclient-auto&features=Rank&q=info:";
	$resultUrl = $startUrl.$domain."&ch=".app_hash_url($domain); 
	$array = get_headers($resultUrl,1); 
	if(!preg_match('/403/',$array[0])){
		$pageContent = file_get_contents($resultUrl);
		$pageRank = substr($pageContent,9);
 		$notify_message .= sprintf( __('PR: %s'), $pageRank ) . "\r\n";
	} else {
		$notify_message .= __('PR:0 ') . "\r\n";
	}
		$notify_message .= __('Comment: ') . "\r\n" . $comment->comment_content . "\r\n\r\n";
	$notify_message .= sprintf( __('Permalink: %s'), get_comment_link($comment) ) . "\r\n";//修改了原本的格式,原格式不能精确跳转到评论位置
	if ( EMPTY_TRASH_DAYS )
		$notify_message .= sprintf( __('Trash it: %s'), admin_url("comment.php?action=trash&c=$comment_id") ) . "\r\n";
	else
		$notify_message .= sprintf( __('Delete it: %s'), admin_url("comment.php?action=delete&c=$comment_id") ) . "\r\n";
	$notify_message .= sprintf( __('Spam it: %s'), admin_url("comment.php?action=spam&c=$comment_id") ) . "\r\n";
	return $notify_message;
}
add_filter( 'comment_notification_text', 'xhd_mail2admin', 10, 2 );

效果如图:

修改系统邮件通知效果 仅供娱乐,么么哒

美化下一篇写
Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!