|
前回は「WordPressを使ったFacebookページの作り方」について述べた。Facebookページを設置したら、今度はお問い合わせフォームも必要になってくるだろう。
今回は、Facebookページに1)WordPressのプラグインとGmailアカウントを用いたお問い合わせフォームの設置方法、2)PHPからGmailアカウントでメールを送信する方法について紹介しよう。
Gmailはご存知、Google社の運営しているメールサービス。普通、Gmailを使う場合、ブラウザ上でメールの閲覧、送信を行うこととなるが、実際にはGoogleが用意してくれるサーバーを通じてメールの送受信も行うことが可能なのだ。というわけで今回はGmailアカウントを活用した。
なお、Facebookページは前回記事で使ったテンプレートファイルを一部修正して作成する。
1)WordPressプラグインとGmailアカウントを用いたお問い合わせフォーム設置方法
以下のテンプレートファイルは、前回記事の「いいね」ボタンの部分だけを取り出したようなものとなる。テンプレートファイルの設置場所は、現在のテーマが設置されているフォルダだ。詳しくはこちらを見てもらいたい。

■Gmailの設定を行うプラグインを使おう
WordPressでGmailによるメール送信機能を使うためのプラグインは幾つか存在する。今回はその中でも最もシンプルだと思われる「Cimy Swift SMTP」を使った。
「Cimy Swift SMTP」
http://wordpress.org/extend/plugins/cimy-swift-smtp/
このプラグインは、WordPressのプラグイン検索では出てこない。「Cimy Swift SMTP」のサイトからZipファイルをダウンロードし、インストールする必要がある。設定は、「設定」>「Cimy Swift SMTP」から行う。
では実際に設定してみよう。
Gmailアカウントが「hoge@gmail.com」である場合、設定は次のようになるだろう。
Sender name
-> 任意の名前
Sender e-mail
-> hoge@gmail.com
Always overwrite the sender:
-> チェックなし
SMTP server address
-> smtp.gmail.com
Port
-> 465
Username
-> hoge@gmail.com
Password
-> hoge@gmail.comのパスワード
Use SSL or TLS?
-> TLS
以上を記入し変更を保存しよう。
■「Contact Form 7」というプラグインでメールフォームを設置
次に、メールフォームの設置を行おう。「Contact Form 7」というプラグインで作成する。
プラグインをインストールすると、左のメニューに「お問い合わせ」という項目ができる。「お問い合わせ」でメールフォームを「新規追加」し、新たなメールフォームを作成してほしい。出来上がりは次のような感じだ。

図にある[contact-form 257 "お問い合わせ"]というコードを固定ページに設置すれば、お問い合わせフォームが出来上がる。もちろんそのときに設置する固定ページは、上で追加したテンプレートファイルを適用することになる。
■できあがりページ
固定ページをFacebookアプリ化し、FacebookアプリをFacebookページに設置する方法に付いては前回説明した。同様の方法で、メールフォームを設置した固定ページをFacebookページに表示させることができる。
こちらができあがりのページだ。
http://www.facebook.com/realglobe?sk=app_107866175984415
お問い合わせフォームを設置することで、Facebookページの利便性が上がる。ぜひ試してもらいたい。
2)PHPからGmailアカウントでメールを送信する方法
ここまでは、WordPressのプラグインを用いて簡単にメールフォームを作成してみた。しかし、中には自分でPHPなどを書き、デザインし、メールフォームを自作したいという要望もあるだろう。
では、自作PHPからGmail経由でメールを送信する方法に付いて少し紹介しよう。
Gmailのアカウント名が”hoge@gmail.com”で、パスワードが”password”だと仮定する。
あとGmailを送るのに必要な情報として
・SMTPサーバー名:smtp.gmail.com
・Port番号:587
・Auth:true
という設定が必要になる。
送り先はfoo@gmail.comと仮定しよう。
以上の設定をPHP形式で書き出すと、以下のようになる。
mb_language("japanese");
mb_internal_encoding("UTF-8");
require_once 'Mail.php';
$params = array(
'host' => 'smtp.gmail.com',
'port' => 587,
'auth' => true,
'username' => 'hoge@gmail.com',
'password' => 'password',
'debug' => true,
);
$headers = array(
'From' => 'hoge@gmail.com',
'To' => 'foo@gmail.com',
'Subject' => mb_encode_mimeheader(mb_convert_encoding("メールのタイトル","JIS","UTF-8"))
);
$recipients = 'foo@gmail.com';
$body = mb_convert_encoding("メールの内容","JIS","UTF-8");
$smtp = Mail::factory('smtp', $params);
$e = $smtp->send($recipients, $headers, $body);
if ( PEAR::isError($e) ) echo $e->getMessage() . "\n";
?>
では、当社のクラウド・ホスティング・プラットフォームサービス「C4SA」上から送れるかどうかテストしてみよう。
C4SAのチュートリアルに従いアプリケーションを作成する。
https://user.c4sa.jp/docs/?url=%BD%E9%A4%E1%A4%C6%A4%CE%A5%A2%A5%D7%A5%EA%BA%EE%C0%AE
C4SAではWebDAVによるファイルのアップロードもサポートしているが、今回はWebブラウザ上で動作するブラウザを使う。
アプリケーションを作成したら、アプリケーション詳細画面から、ファイルというリンクをクリックする。するとファイルブラウザモードに変わる。

ファイルブラウザモードでは、リストの下の方に作成ボタンが2つある。上の作成ボタンはファイル、下の作成ボタンはディレクトリの作成ボタン。ここでは(拡張子が.phpである)任意のファイルを作成する。

PHPファイルを作成し、ファイル名をクリックすると、そのファイルがエディタで開く。上記のPHPスクリプトをコピー&ペーストし、更新ボタンを押して保存して欲しい。

そのあと実行ボタンを押すと、メールが送信される。おそらく次のようなデバックメッセージが表示されるだろう。

でも心配しないで。ちゃんとメールは送れているはずだから。

いかがだろう。これで、PHPをつかってGmailによるメール送信を行えることが分かった。あとは自由にメールフォームを作成し、Facebookアプリを作ってもらいたい。
|