国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索

[Drupal教程] Drupal 7.X教程:利用smtp发送html格式邮件的设置方法

[复制链接]
发表于 5-5-2012 05:31 | 显示全部楼层 |阅读模式
drupal7发邮件跟drupal5也是有挺多的差别的,使用drupal_mail发送邮件,邮件内容的相关信息都是在调用drupal_mail的方法事,在$params这个参数中传递进来,生成message的subject和body则是调用hook_mail()
$ x3 R/ b9 O5 b( Z6 W, u8 \% x! J$ f7 t1 E
如果使用smtp来发送mail呢?这个很简单,因为drupal的module很多(要感谢那些无私奉献的人),简单介绍下:
3 q! ]& j- @, A, A' U一:下载PHPMailer http://drupal.org/project/phpmailer
7 A1 i8 o$ X; g6 ?' W% f      这个module还需要依赖Libraries API http://drupal.org/project/libraries
3 x& _# v; e1 `
: n. ^! V6 Z9 O) a6 h% j, s6 D8 o% \/ X+ u, w
二:下载PHPMailer库 http://code.google.com/a/apache- ... iler/downloads/list,提取class.phpmailer.php和class.smtp.php这两个文件,放到drupal\sites\all\libraries\phpmailer这个文件夹下,(libraries是专门用来放一些类库的)   s7 k# `  ]6 P% l/ H' }( C

! [- v0 v# i, }7 d7 O
9 Z( [) k" ]1 f) [三:到后台module下安装PHPMailer和Libraries API这两个module,安装完成后,进入admin/config/system/phpmailer这个页面对PHPMailer做一些配置,他推荐的是gmail,上面有详细的步骤。
5 |+ f* l& a' O2 `1 q0 u, H+ J% X, O. \
然后开始发邮件,可是在发送邮件的过程中发现了个令人头疼的问题,我想发送html格式的mail,尽管我修改了header中的Content-Type为text/html,可是收到的始终是内容被转了格式的邮件。原来在drupal_mail()中有个有句代码是$message = $system->format($message);(大概在L146),message被转格式了,在项目种搜索format()这个方法,搜到好几处,排除确定后,原来是调用了phpmailer.class.inc的format,在这个方法中$message['body'] = drupal_html_to_text($message['body']);就是这句将html格式转化了。
! Q. k& ?8 ]* k( {! z$ [
' q7 k, O+ f$ Z3 v  u; w4 c这样利用smtp发送html邮件就大功告成了。在搜索项目中调用了哪处的format,也可在mail.inc的drupal_html_to_text()的这个方法中加上debug_print_backtrace()这个方法去跟踪你的代码。# i0 c- c! m( Z! i8 l3 S

8 D) X, @8 ?* X/ A/ q. P
2 H* P; v( ]7 f: e本文选自:jhddxp,谢谢!  q+ F1 s$ }8 A; d' R, C
发表于 5-26-2012 14:14 | 显示全部楼层
这么好的帖子不顶就太对不起楼主了
' i+ h6 u5 {) C: q. }
; \1 s; ~' q6 Z8 C( `
5 A! T5 r/ J4 j9 f4 I3 P
0 k7 W/ F. q0 r0 D' W' X5 I: A" Z9 w" M# b% T- D# r9 o
1 a; s' ^- q1 ^5 v. L: o1 ~

: d* m. \! K0 X& `* H4 a$ F" d% t. A2 F2 R

. I* C" P  i% A% B- ?
3 p: u# I' r$ ?1 ^' S3 G3 g
; u$ {5 P  b+ d) M/ a8 J+ a, r) }4 |# Y# {8 f% o  W

: {0 W, L( ?6 v& ~/ w. L6 C一乐电影网快播资讯xy025.com

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 2-21-2025 07:51 , Processed in 0.283036 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表