RSS

タグ別アーカイブ: language php

cakePHP2.1でcakeEmailを使う。

そろそろcakePHP2.1であんなことやこんなことやっていろいろ恥ずかしいことも蓄積してきたので皆様とシェア致します。

こちらのサイトを参考にしました。
1.2,1.3ではqdmailを使っていたのですが、開発自体がすでに止まっているようなので
標準で用意されているものも最近は利用されている人が多いようなのでこちらでやってみました。

app/Config/email.phpにはこんなかんじで設定。gmail経由で送ってみたよ。
インストールしたばっかりんときはemail.php.defaultみたいなファイル名なので名前をちゃんと変えよう。
すでにdefaultの項目があるのでこんなかんじに変えてみました。お好みで変えてみてください。

	public $default = array(
		'transport' => 'Smtp',
		'from' => array('yash@xxx.com' => 'メールでの表示名'),
		'host' => 'ssl://smtp.gmail.com',
		'port' => 465,
		'timeout' => 30,
		'username' => 'hogehoge@hogehoge.com',
		'password' => 'hogehoge',
		'log' => true//ここをtrueにするとtmp/debug.logにメールのログが書かれる。
	);

を冒頭にセット。
使う側のコントローラーには

App::uses('CakeEmail', 'Network/Email');

そんでもって実際に送る場所こんなかんじで。
テンプレートやらのセットはマニュアルにあるので読むべし。cakePHP2.1から?ではないと思うけどテンプレートの構成が若干1.2と変わっているんでつね・・

$email = new CakeEmail('default');//ここ、ちゃんとdefaultを設定しないと送れませんでした・・。
$email->from(array('yashiro@XXX.com' => 'My Site'));
$email->to('yashiro@XXX.com');
$email->subject('テストです');
$email->send('日本語でおくれるかなー?');

こんなかんじで無事におくれました!(∩´∀`)∩ワーイ
Pluginも結構cakePHP2.1で動くもの多いですね。SearchPluginもACLPluginも。SoftDeleteビヘイビアとかArraySourceとかもぼつぼつ。

 
2件のコメント

投稿者: : 3月 21, 2012 投稿先 Uncategorized

 

タグ: