お知らせ

Movable Type 5.1 プロの現場の仕事術2011年6月30日

Movable Type 5.1 プロの現場の仕事術」が発売されました。
Movable Type 5.1の基本から、スマートフォン用サイトの作成、管理画面のカスタマイズなど、まさにプロの方のために書かれたMovable Type 5.1の解説書です。
Movable Typeでサイト制作をされている皆様はぜひお買い求めください。

他にも多数書籍を執筆しています。
こちらもぜひご覧ください。

メールフォームプラグインV2.0・その9(メール本文/返信メールテンプレートの作成)

| コメント(30) | トラックバック(0)

メールフォームプラグインでは、フォームから送信されるメールの文面も、必要に応じてカスタマイズすることができます。

1.テンプレート名の指定

「メール本文」のテンプレートは、メールフォームから自分宛に送信されるメールの文面を決めるテンプレートです。
また、「返信メール」のテンプレートは、メールフォームでメールを送信した人に、自動返信のメールを送る際の文面を決めるテンプレートです。

いずれのテンプレートも、テンプレートモジュールとして作ります。
メール本文のテンプレートモジュールでは、テンプレート名の先頭に「mail_body:」の接頭語を付加します。
例えば、「mail_body:メール本文」のような名前をつけます。
また、返信メールのテンプレートモジュールでは、テンプレート名の先頭に「mail_reply:」の接頭語を付加します。

2.テンプレートの作成

メール本文および返信メールのテンプレートの中では、メールフォームで入力された内容を、MTMailPreview系のタグで表すことができます。

例えば、サンプルのメールフォームのテンプレートでは、メール本文のテンプレートは以下のようになっています。

名前:<$MTMailPreviewAuthor$>
タイトル:<$MTMailPreviewSubject$>
本文:
<$MTMailPreviewBody$>

この中の「<$MTMailPreviewAuthor$>」のタグは、メールを送信した人の名前に置き換えられます。
同様に、「<$MTMailPreviewSubject$>」と「<$MTMailPreviewBody$>」のタグは、それぞれメールのタイトルと本文に置き換えられます。

Facebook連携

当記事について「いいね」や「送信」を行っていただけると幸いです。


この記事についてウォールに投稿

トラックバック(0)

トラックバックURL: http://www.h-fj.com/mt/mt-tb.cgi/1206.

コメント(スレッド14件,コメント30件)

コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。

No.1 mak : 本文のボックスの中に指示の文を入れたい

fujimotoさま

メールフォームを導入しようとしているmakです

本文のボックスの中に、書いて欲しい内容を説明する文を入れたいのですが、可能でしょうか?

例えば、必ず年齢を書いてください とかです

よろしくお願いします

No.2  : Re:本文のボックスの中に指示の文を入れたい

>makさん
こんにちは。

ご質問の件について記事を書きました。

http://www.h-fj.com/blog/archives/2008/03/13-104007.php

No.3 mak : ご回答ありがとうございました

ご回答ありがとうございました
試してみます

No.4 mogi : メール本文について

こんにちは

こちらのプラグインを使ってメールフォームを作っているmogiと申します。

何度か送信テストを行ったのですが、
メール本文に

が入ってしまいます。

例えばソースが

入力内容が
999-9999

だったとすると

999-9999

といった形で送られてくるのです。

どうしても原因がわかりません。

よろしくお願いします。

No.5 mogi : No.4 mogi : メール本文について を訂正

先に送信したメールの内容が一部消えてしまったので訂正します。

何度か送信テストを行ったのですが、
メール本文で

MTMailPreviewExtParamを使ったところに

<p> <⁄p>

が入ってしまいます。

例えば

入力内容が
999-9999

だったとすると

<p>999-9999<⁄p>

という形で送られてくるのです。

原因が全く分かりません。

よろしくお願いします。

No.6  : (無題)

>mogiさん
こんにちは。

ご質問の件ですが、MailPreviewExtParamタグに「convert_breaks="1"」のモディファイアを付加しているのではないでしょうか。
このモディファイアを付加すると、ブログ記事の改行自動変換と同じ処理が行われます。
それによって、値が段落ごとに区切られ、各段落がpタグで囲まれます。

No.7 kemkem : メール本文のテンプレート、返信メールのテンプレートにて

こんにちは、fujimotoさま

チェックボックスのオン、オフでメール内で表示する文章を切り替えたく、mtsetver と mtif を使っているんですが、確認画面ではうまく行くんですが、メール本文のテンプレート、返信メールのテンプレートな中では、うまく分岐してくれません。

メール本文のテンプレート、返信メールのテンプレートの中ではMTのタグは使えないのでしょうか?


No.8  : Re:メール本文のテンプレート、返信メールのテンプレートにて

>kemkemさん
こんにちは。

ご質問の件ですが、メール本文/返信メールのテンプレートを再構築する時点では、フォームで入力された値を変数に設定する処理を行っていません。
MTIfタグを使う前に、以下のようにしてフォームで入力された値を変数に代入してください。

<mt:SetVarBlock name="フィールド名"><$mt:MailPreviewExtParam name="フィールド名"$></mt:SetVarBlock>

なお、この点も含めて、いくつかの点を改良してバージョンアップしたいと思っています。
ただし、バージョンアップの時期は未定です。

No.9 kemkem : ありがとうございます!

こんにちは、fujimotoさま

先の方法をとりましたら、解決しました!
ありがとうございます♪

No.10 だいず : メール本文について

壱さま、こんにちは。
メール本文に送信者のIPアドレスかホストの情報を記載したいのですが、可能でしょうか。
また、メールフォームプラグインV1.30の機能一覧にありました
「IPアドレスによるブロック」は、V2.0にも含まれていますか?
とても使用感の良いプラグインなので、是非使用させていただければと思います。
どうぞ宜しくお願い致します。

No.11  : Re:メール本文について

>だいずさん
こんにちは。
プラグインご利用ありがとうございます。

>メール本文に送信者のIPアドレスかホストの情報を記載したいのですが、可能でしょうか。
プラグインを拡張すれば可能です。
ご希望であれば、有償で拡張を作成します。

>「IPアドレスによるブロック」は、V2.0にも含まれていますか?
含まれています。

No.12 だいすけ : UTF8

こんにちは、いつも拝見させていただいております。

カートの設置の関係で、サイトの文字コードをShift-JIS
にして作ってあるのですが、メール送信時に

”不正な要求です。文字コードUTF-8に含まれない文字データを送信しています。 ”

とのエラーが起こってしまいます。
サイトの文字コードを戻す以外方法はないのでしょうか?
するとカートのほうが使えなくなってしまうのですが、
なにか良い方法はないでしょうか?

No.13  : Re:UTF8

>だいすけさん
こんにちは。

「不正な要求です。文字コードUTF-8に含まれない文字データを送信しています。」のメッセージは、メールフォームプラグインではなく、MT本体が出しているメッセージです。
また、このメッセージはセキュリティに関係する仕様で出るものなので、MT本体を書き換えるわけにもいきません。
ということで、申し訳ありませんが、文字コードをUTF-8にする以外に、策はないと思います。

No.14 ぴんぽん : メール本文が「はてなマークの羅列」に・・

MTOS5、文字コードUTF-8です。

他の動作はうまくいっていますが、送信されたメールの本文のうち、2バイト文字部分だけが「半角はてなマークの羅列」になってしまいます。
文字コードの問題だと思い調べてみますが、解決できません。
恐れ入りますが、ご指導願います。

No.15  : Re:メール本文が「はてなマークの羅列」に・・

>ぴんぽんさん
こんにちは。

Movable Typeの設定ファイル(mt-config.cgi)に、以下の行を追加してみてください。

MailEncoding ISO-2022-JP

No.16 ぴんぽん : 解決

あっ。
無恥でした。ご相談させていただき、よかった!

No.17 ナツキ : 返信メール内、署名の文字化けについて

先日は、メールフォームの不具合で大変お世話になりました。

本日は、返信メール内の最後に署名を入れたのですが
「〜」の全角文字が \x{ff5e} という文字の羅列で文字化けしてしまいます。

No.15の設定でメール本文の中は文字化けしなくなったのですが。。
署名の中の文字だけ文字化け状態です。

恐れ入りますが、お教えいただけますでしょうか。
宜しくお願いいたします。

No.18  : Re:返信メール内、署名の文字化けについて

>ナツキさん
こんにちは。

お使いのMovable Typeはバージョン5でしょうか。
だとすると、Movable Type本体の不具合です。
すでに、シックスアパートに不具合を報告してありますので、Movable Typeの次のバージョンではおそらく不具合が修正されると思います。

No.19 ナツキ : (無題)

壱さま

早速のお返事ありがとうございます。
バーション5を使用していました!

今は仕方ないんですね〜。
何か違う表記の仕方に変えてみます。
お忙しい中、いつもありがとうございました!

No.20 クリス : 送信者の名前とアドレス

メールフォーム、ありがとうございます。
早速インストールしてみたのですが、
下記のような設定は可能でしょうか。

■自動返信メールの送信者名の表示をメールアドレスでなく自分の名前にする

■送信先に届くメールの送信者アドレスを、フォームに入力されたものにする

説明が下手で伝わりづらかったら申し訳ありません。

No.21  : Re:送信者の名前とアドレス

>クリスさん
こんにちは。

>■自動返信メールの送信者名の表示をメールアドレスでなく自分の名前にする
「自動返信時の送信元のメールアドレス」の欄に、「名前 」のように入力してください。
例えば、名前が「太郎」で、メールアドレスが「taro@hogehoge.com」の場合だと、「自動返信時の送信元のメールアドレス」の欄に「太郎 」と入力します。

>■送信先に届くメールの送信者アドレスを、フォームに入力されたものにする
デフォルトでは、「詳細設定」の「送信元のメールアドレス」の設定が「送信者のメールアドレス」になっていて、ご希望のような動作になっているはずです。


No.22 クリス : 送信者名が文字化けしてしまいます

早速のお返事有難うございました。

>例えば、名前が「太郎」で、メールアドレスが「taro@hogehoge.com」の場合だと、「自動返信時の送信元のメールアドレス」の欄に「太郎 」と入力します。

についてですが試してみたところ
送信者名が文字化けし(全角文字です)
文字化けした名前の後に
@ サーバー名 No.
が付加されてメールが届きました・・・


↓以下については、仕様をきちんと理解していなくて失礼しました。
無事解決できました。

>■送信先に届くメールの送信者アドレスを、フォームに入力されたものにする

No.23  : Re:送信者名が文字化けしてしまいます

>クリスさん
こんにちは。

「<」「>」をエンコードするのを忘れていました。
「太郎 <taro@hogehoge.com>」のように、「名前 <メールアドレス>」の形にしてください。

No.24 クリス : 出来ました!

すご~い!出来ました
引き続き頑張ります!
ありがとうございました。

No.26 上田 : タイムスタンプ

お世話なります。

送信されるメールの中に送信日時を挿入することは可能でしょうか。

どうぞよろしくお願いいたします。

No.27  : Re:タイムスタンプ

>上田さん
こんにちは。

MTDateタグが使えるはずです。
なお、MTDateタグは、テンプレートを再構築した時点の日時を表します。

No.32 上田 : Re:タイムスタンプ

mail_bodyテンプレートにMTDateタグを入れることで送信日時を挿入することができるようになりました。

ありがとうございました!

No.28 まう : メール本文中に空白

お世話になっております。

「GetQueryParam」をインストールし、ラジオボタンやセレクトを作成しました。

フォームの送信までは問題なく出来たのですが、
送られてくる「メール本文」と「自動返信メール」中の
「MTMailPreviewExtParam name="フィールド名」
と記載した部分が長い空白になっており、その後ろに選択された内容が記載されています。
選択した内容は正確に記載されています。

下記のような感じです。

________________________________

氏名:○○○
メールアドレス:○○○@○○○
性別:           男
学年:           3年生
内容:○○○○○○○○○○

_________________________________

この空白はなぜできるのでしょうか?
ちなみにメーラーはAL-MAILを使用しております。

なにか基本的なミスをしているのかもしれません。
恐れ入りますが、よろしくお願い致します。

No.29  : Re:メール本文中に空白

>まうさん
こんにちは。

ご質問の件ですが、MTMailPreviewExtParamタグの前にスペースを入れていらっしゃらないでしょうか。
テンプレート内のスペースは、そのまま出力されます。

No.31 まう : (無題)

壱様

即答ありがとうございます!

MTMailPreviewExtParamタグの前にはスペースはいれていなかったのですが、mail_common中でリストを作成する部分に空白を入れておりました!
これを削除したら空白も消えました。

助かりました!本当にありがとうございます。
これからもよろしくお願いいたします。

コメントする


Facebookでコメント

試験的にFacebookのコメントフォームを設置しました。