首页 php教程 php手册 在主题函数修改系统通知邮件 美化篇

在主题函数修改系统通知邮件 美化篇

Jun 06, 2016 pm 08:09 PM
主题 修改 函数 系统 美化 通知 邮件

我觉得有些人说的也对,总贴代码,可能滚去github比较好,但是我爱wordpress,我不会离开这里 /**系统原本定义的mail类型不支持HTML,所以需要挂一个新钩子:comment_notification_headers**/function xhd_mail2admin_2() {if ( '' == $comment-comment_author ) {

我觉得有些人说的也对,总贴代码,可能滚去github比较好,但是我爱wordpress,我不会离开这里

/**系统原本定义的mail类型不支持HTML,所以需要挂一个新钩子:comment_notification_headers**/
function xhd_mail2admin_2() {
	if ( '' == $comment->comment_author ) {
		$from = "From: \"$blogname\" ";
		if ( '' != $comment->comment_author_email )
			$reply_to = "Reply-To: $comment->comment_author_email";
	} else {
		$from = "From: \"$comment->comment_author\" ";
		if ( '' != $comment->comment_author_email )
			$reply_to = "Reply-To: \"$comment->comment_author_email\" comment_author_email>";
	}
	$message_headers = "$from\n"
		. "Content-Type: text/html; charset=\"" . get_option('blog_charset') . "\"\n";
		return $message_headers;
}
add_filter('comment_notification_headers', 'xhd_mail2admin_2', 10, 2 );
/**在昨天代码基础上的美化**/
 function xhd_mail2admin( $notify_message, $comment_id ) {
	$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);
	$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( __( '<div style="font: 12px 微软雅黑;width: 600px;margin: 20px auto;word-break: break-all;">
<table border="0" style="font: 15px 微软雅黑;border-collapse: collapse;width: 600px;margin: 20px auto;"><tbody>
<tr>
<td style="text-align: center;padding: 8px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;" colspan="2">您的文章《%s》有新评论' ), $post->post_title ) . '</td>';
	$notify_message .= sprintf( __('</tr>
<tr>
<td style="padding: 8px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;width: 70px;">昵称 :</td>
<td style="padding: 8px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;"> %s '), $comment->comment_author ) . '</td>';
	$notify_message .= sprintf( __('</tr>
<tr>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">IP :</td>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;"> %1$s ( %2$s ) '), $json,  $comment->comment_author_IP ) . '</td>
</tr>
<tr>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">';
	$notify_message .= sprintf( __('网站 :</td>
<td style="padding: 8px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;"> %s'), $comment->comment_author_url ) . '</td>
</tr>
<tr>
<td style="padding: 8px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">';
	$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 : </td>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;"> %s'), $pageRank ) . '</td>
</tr>
<tr>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">';
	} else {
		$notify_message .= __('PR : </td>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">0 ') . '</td>
</tr>
<tr>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">';
	}
		$notify_message .= __('<div>评论内容 :</div>
</td>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">')  . $comment->comment_content . '</td>
</tr>
<tr>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;">';
	$notify_message .= sprintf( __('固定链接 :</td>
<td style="padding: 6px 15px;font: 15px 微软雅黑;border: 1px solid #ccc;"> %s'), get_comment_link($comment) ) . '</td>
</tr>
</tbody></table>
<br><div style="margin-left:10px">';
	if ( EMPTY_TRASH_DAYS )
		$notify_message .= sprintf( __('Trash it: %s'), admin_url("comment.php?action=trash&c=$comment_id") ) . "<br>";
	else
		$notify_message .= sprintf( __('Delete it: %s'), admin_url("comment.php?action=delete&c=$comment_id") ) . "<br>";
	$notify_message .= sprintf( __('Spam it: %s'), admin_url("comment.php?action=spam&c=$comment_id") ) . "<br>
</div>
</div>";
	return $notify_message;
}
add_filter( 'comment_notification_text', 'xhd_mail2admin', 10, 2 );
登录后复制

效果见上一篇附图

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

华为干昆 ADS3.0 智驾系统 8 月上市 享界 S9 首发搭载 华为干昆 ADS3.0 智驾系统 8 月上市 享界 S9 首发搭载 Jul 30, 2024 pm 02:17 PM

7月29日,在AITO问界第四十万台新车下线仪式上,华为常务董事、终端BG董事长、智能汽车解决方案BU董事长余承东出席发表演讲并宣布,问界系列车型将于今年8月迎来华为干昆ADS3.0版本的上市,并计划在8月至9月间陆续推送升级。 8月6日即将发布的享界S9将首发华为ADS3.0智能驾驶系统。华为干昆ADS3.0版本在激光雷达的辅助下,将大幅提升智驾能力,具备融合端到端的能力,并采用GOD(通用障碍物识别)/PDP(预测决策规控)全新端到端架构,提供车位到车位智驾领航NCA功能,并升级CAS3.0全

常用常新!华为Mate60系列升级HarmonyOS 4.2:AI云增强、小艺方言太好用了 常用常新!华为Mate60系列升级HarmonyOS 4.2:AI云增强、小艺方言太好用了 Jun 02, 2024 pm 02:58 PM

4月11日,华为官方首次宣布HarmonyOS4.2百机升级计划,此次共有180余款设备参与升级,品类覆盖手机、平板、手表、耳机、智慧屏等设备。过去一个月,随着HarmonyOS4.2百机升级计划的稳步推进,包括华为Pocket2、华为MateX5系列、nova12系列、华为Pura系列等多款热门机型也已纷纷展开升级适配,这意味着会有更多华为机型用户享受到HarmonyOS带来的常用常新体验。从用户反馈来看,华为Mate60系列机型在升级HarmonyOS4.2之后,体验全方位跃升。尤其是华为M

golang函数动态创建新函数的技巧 golang函数动态创建新函数的技巧 Apr 25, 2024 pm 02:39 PM

Go语言提供了两种动态函数创建技术:closures和反射。closures允许访问闭包作用域内的变量,而反射可使用FuncOf函数创建新函数。这些技术在自定义HTTP路由器、实现高度可定制的系统和构建可插拔的组件方面非常有用。

C++ 函数命名中参数顺序的考虑 C++ 函数命名中参数顺序的考虑 Apr 24, 2024 pm 04:21 PM

在C++函数命名中,考虑参数顺序至关重要,可提高可读性、减少错误并促进重构。常见的参数顺序约定包括:动作-对象、对象-动作、语义意义和遵循标准库。最佳顺序取决于函数目的、参数类型、潜在混淆和语言惯例。

如何在Java中写出高效和可维护的函数? 如何在Java中写出高效和可维护的函数? Apr 24, 2024 am 11:33 AM

编写高效和可维护的Java函数的关键在于:保持简洁。使用有意义的命名。处理特殊情况。使用适当的可见性。

excel函数公式大全 excel函数公式大全 May 07, 2024 pm 12:04 PM

1、 SUM函数,用于对一列或一组单元格中的数字进行求和,例如:=SUM(A1:J10)。2、AVERAGE函数,用于计算一列或一组单元格中的数字的平均值,例如:=AVERAGE(A1:A10)。3、COUNT函数,用于计算一列或一组单元格中的数字或文本的数量,例如:=COUNT(A1:A10)4、IF函数,用于根据指定的条件进行逻辑判断,并返回相应的结果。

华为将在智能穿戴领域推出玄玑感知系统 可根据心率评估用户情绪状态 华为将在智能穿戴领域推出玄玑感知系统 可根据心率评估用户情绪状态 Aug 29, 2024 pm 03:30 PM

近日,华为宣布将于9月推出一款搭载玄玑感知系统的全新智能穿戴新品,预计为华为的最新智能手表。该新品将集成先进的情绪健康监测功能,玄玑感知系统以其六大特性——准确性、全面性、快速性、灵活性、开放性和延展性——为用户提供全方位的健康评估。系统采用超感知模组,优化了多通道光路架构技术,大幅提升了心率、血氧和呼吸率等基础指标的监测精度。此外,玄玑感知系统还拓展了基于心率数据的情绪状态研究,不仅限于生理指标,还能评估用户的情绪状态和压力水平,支持超过60项运动健康指标监测,涵盖心血管、呼吸、神经、内分泌、

C++ 函数默认参数与可变参数的优缺点比较 C++ 函数默认参数与可变参数的优缺点比较 Apr 21, 2024 am 10:21 AM

C++函数中默认参数的优点包括简化调用、增强可读性、避免错误。缺点是限制灵活性、命名限制。可变参数的优点包括无限灵活性、动态绑定。缺点包括复杂性更高、隐式类型转换、调试困难。

See all articles