`
haohappy2
  • 浏览: 326038 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

The Email template Path of Yii-Email extensions

    博客分类:
  • YII
 
阅读更多
Usually, when we use the yii-mail.  If we use our own themes.  The email template seems store at

 <webroot>\protected\views\mail\xxx.php, It's not good for us to maintain the email template.

 Suppose  our themes name is  “Patrick”,  When send the email, the email content should be found at <webroot>\patrick\views\mail\xxx.php

 

And we need to change the  file  of  YiiMailMessage.php  of yii-email as below.

 

public function setBody($body = '', $contentType = null, $charset = null) {
		if ($this->view !== null) {
			if (!is_array($body)) $body = array('body'=>$body);
			
			// if Yii::app()->controller doesn't exist create a dummy 
			// controller to render the view (needed in the console app)
			if(isset(Yii::app()->controller))
				$controller = Yii::app()->controller;
			else
				$controller = new CController('YiiMail');
			
			// renderPartial won't work with CConsoleApplication, so use 
			// renderInternal - this requires that we use an actual path to the 
			// view rather than the usual alias
			
                        $basePath = Yii::app()->theme->basePath;
                        if(strpos( $basePath, 'protected')===true){
                             $viewPath = Yii::getPathOfAlias(Yii::app()->mail->viewPath.'.'.$this->view).'.php';       
                        }else{
                        
                             $viewPath = Yii::app()->theme->basePath."/views/mail/".$this->view.".php";
                        }
                        $body = $controller->renderInternal($viewPath, array_merge($body, array('mail'=>$this)), true);	
		}
		return $this->message->setBody($body, $contentType, $charset);
	}

 

     public function sendMail($email)
        {
                $message = new YiiMailMessage;  
  
                $message->from = Yii::app()->params['adminEmail'];    // 送信人  
                $message->addTo($email);                              // 收信人  
                $message->setSubject("订阅成功确认邮件!");
                $coupon = "KAB12345678";
                $message->view = 'email';                             // 邮件模板的文件名(不带后缀PHP)  
                $message->setBody(  
                        array(
                            'email'=>$email,
                            'coupon'=>$coupon
                        
                        ),                       // 传递到模板文件中的参数  
                        'text/html',                                  // 邮件格式  
                        'utf-8'                                       // 邮件编码  
                 ); 
                 $sendmail = Yii::app()->mail->send($message) ;
                
        }

 

来自的Email:<br />   
注册内容如下 <br />  
Email   : &nbsp; <?php echo $email;?>   <br />  
Coupon  : &nbsp; <?php echo $coupon;?>   <br />  

<br />  
<br />  

 

分享到:
评论

相关推荐

    yii-advanced-app-2.0.10.tgz

    这个版本是“yii-advanced-app-2.0.10.tgz”,它是一个压缩包,包含了 Yii 2 框架的高级应用模板,版本号为 2.0.10。这个版本可能包含了一些修复和改进,以提供更稳定和高效的开发环境。 Yii 2 是一个基于组件的高...

    yiren-p8Yii-ve2467575-x64.apk

    yiren-p8Yii-ve2467575-x64.apk

    yiren-p8Yii-v17323.apk

    yiren-p8Yii-v17323.apk

    yii-advanced-app-2.0.4

    "yii-advanced-app-2.0.4" 是 Yii 2.0 框架的一个高级应用模板,适用于构建复杂的多层应用程序。这个版本是 2.0.4,意味着它包含了该框架在 2.0 主线版本中的第四次更新,通常会包含修复的错误、改进的性能以及可能...

    yii-basic-app-2.0.5.tgz

    "yii-basic-app-2.0.5.tgz" 是一个压缩包,其中包含了Yii2框架的基础版(Basic App)的源代码,版本号为2.0.5。这个版本修复了一个重要的安全问题,具体涉及到`yii\web\ViewAction`类。 `yii\web\ViewAction`是Yii2...

    yii-1.0.4.r920

    在“yii-1.0.4.r920”版本中,我们可以看到 Yii 的一个早期稳定版本,它提供了许多核心特性,旨在简化开发流程并提高应用性能。 1. MVC(模型-视图-控制器)架构模式:Yii 遵循 MVC 设计模式,将应用程序逻辑分为三...

    yii-1.1.8.r3324

    "yii-1.1.8.r3324" 版本是 Yii 框架的一个特定发行版,它在 1.1.x 系列中的一个稳定版本。这个版本号表示该框架在 1.1 主线版本基础上的第 3324 个修订版本。接下来,我们将深入探讨 Yii 框架以及这个版本的一些关键...

    yii-advanced-app-2.0.11.tgz

    这个名为 "yii-advanced-app-2.0.11.tgz" 的压缩包包含了所有必要的文件和配置,使得开发者可以快速地搭建起基于Yii 2的多层架构项目。 Yii 2.0框架是Yii框架的最新迭代,它在性能、安全性和可扩展性方面都有显著...

    yii-basic-app-2.0.7

    yii-basic-app-2.0.7

    yii-advanced-app-2.0.8下载

    yii-advanced-app-2.0.8.tgz 由于国外服务器下载太慢,共享下,用composer安装没有vendor核心文件夹

    yii-docs-2.0-zh-cn.tar.gz

    这个"yii-docs-2.0-zh-cn.tar.gz"压缩包包含了Yii 2.0框架的中文离线HTML版文档,使得开发者无需互联网连接也能查阅详尽的指导和API参考。同时,它还提供了英文版本的离线HTML文档以及"yii-guide-2.0-zh-cn"官方中文...

    yii-basic-app-2.0.36.tgz

    "yii-basic-app-2.0.36.tgz"是Yii2框架的基础应用模板的压缩包,版本号为2.0.36。这个压缩包是为了方便开发者快速启动一个新的Yii2项目而设计的,它包含了构建基本Web应用所需的所有核心组件和文件。 首先,让我们...

    yii-advanced-app-2.0.35.tgz

    在本案例中,我们讨论的是Yii2框架的高级应用模板(Advanced App Template)的一个版本——v2.0.35,这个版本的归档文件为“yii-advanced-app-2.0.35.tgz”。 Yii2 高级应用模板是一个预配置的项目结构,旨在满足...

    yii-basic-app-2.0.32.tgz

    这个“yii-basic-app-2.0.32.tgz”压缩包包含了Yii2框架的基本应用模板,适用于快速搭建一个新的Web项目。版本号“2.0.32”意味着这是一个稳定且更新到最新状态的版本,确保了安全性与兼容性。 Yii2框架的核心特性...

    yii-basic-app-2.0.7.tgz

    "yii-basic-app-2.0.7.tgz" 是Yii 2.0.7版本的基本应用程序模板的压缩包文件,这个版本发布于2016年,包含了构建一个基本Web应用所需的所有基础结构。 首先,让我们深入了解一下Yii 2.0框架的关键特性: 1. **性能...

    Yii-extensions, 我对Yii框架社区的小贡献.zip

    Yii-extensions, 我对Yii框架社区的小贡献 Yii框架扩展下面是我对amazing社区的小贡献。重要通知这个存储库很快将重构为指向独立 extensions/widgets/helpers的子模块列表,以帮助你和库独立地进行改进。 是首次创建...

    yii-basic-app-2.0.35.tgz

    "yii-basic-app-2.0.35.tgz"是一个包含Yii2基础应用模板的压缩包,版本号为2.0.35。这个压缩包通常包含了创建一个基本的Web应用所需的所有文件和结构。 1. **Yii框架概述**:Yii是一个开源的PHP框架,它遵循简洁和...

    yii-advanced-app-2.0.36.tgz

    Yii 2 Advanced Application 是一个基于 Yii 2 框架的高级项目模板,适用于构建复杂的、多应用的 Web 应用程序。版本号 2.0.36 表示这是该框架的一个稳定版本,提供了许多改进和修复。这个 `.tgz` 文件是该模板的...

    yii-resque, 基于 php Resque的Yii组件,基于.zip

    yii-resque, 基于 php Resque的Yii组件,基于 Resque我是 php的一个组件,它基于 php-resque resque和 php-resque-scheduler的组件,我们还通过使用 ResqueBoard测试了日志处理程序 using 。需求php函数扩展。Red

    yii-sae-app

    标题“yii-sae-app”指的是一个基于Yii框架的示例应用程序,特别设计用于在新浪SAE(Sina App Engine)平台上运行。这个项目是开发者学习如何在新浪SAE上部署和运行Yii应用的一个实例。 首先,我们需要理解Yii框架...

Global site tag (gtag.js) - Google Analytics