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


美化下一篇写
原文地址:在主题函数直接修改系统邮件通知, 感谢原作者分享。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

Dreamweaver CS6
Alat pembangunan web visual

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Dreamweaver Mac版
Alat pembangunan web visual

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!
