お知らせ

WordPressで学ぶPHPとMySQL2009年9月23日

WordPressで学ぶPHPとMySQL」を発売しました。
「WordPressをカスタマイズしたいけど、PHPやMySQLが分からなくて躓いている」という方のための、PHPとMySQLの入門書です。
WordPressでWeb製作をされている方などにお勧めです。
PDFによる販売で、当サイトでのみ購入できます(書店では購入できません)

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

メールフォームプラグインV2.0・その10(テキストボックスの追加)

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

メールフォームプラグインでは、任意のフィールドをフォームに入れることができます(ただしファイルのアップロードを除く)。
今日は、テキストの入力欄(<input type="text"...>または<textarea...></textarea>)の追加方法を解説します。

1.「メールフォーム共通部分」のテンプレートへのタグの追加

まず、「メールフォーム共通部分」のテンプレートに、テキスト用のフィールドを追加します。

1行のテキストを入力する欄は、以下のようなタグで追加することができます。

<input type="text" name="フィールド名" size="幅" value="<$MTMailPreviewExtParam name="フィールド名"$>" />

また、複数行のテキストを入力する欄は、以下のようなタグで追加することができます。

<textarea name="フィールド名" rows="行数" cols="幅"><$MTMailPreviewExtParam name="フィールド名"$></textarea>

なお、フィールド名のつけ方は任意です。
ただし、以下の名前はメールフォームプラグインの中で使用していますので、これらとは重複しないものにする必要があります。

  • mail_author
  • mail_email
  • mail_email_confirm
  • mail_subject
  • mail_text
  • mail_post
  • mail_preview
  • mail_blog_id
  • mail_ajax

例えば、「趣味」という1行のテキスト入力欄を作りたいとします。
そのフィールドの名前を「mail_hobby」にするとします。
この場合、以下のようなタグを、「メールフォーム共通部分」のテンプレートに入れます。

<p>
    <label for="mail_hobby">趣味</label><br />
    <input type="text" id="mail_hobby" name="mail_hobby" value="<$MTMailPreviewExtParam name="mail_hobby"$>" />
</p>

2.「メール本文」「返信メール」テンプレートへのタグの追加

次に、「メール本文」および「返信メール」のテンプレートにタグを追加して、テキストボックスで入力された値を、メール本文や返信メールに入れられるようにします。

「メール本文」および「返信メール」のテンプレートの中でも、「<$MTMailPreviewExtParam name="フィールド名$">」の形で、テキストボックスに入力された値を得ることができます。
例えば、1の手順で「趣味」のフィールドを作った場合、「メール本文」のテンプレートを以下のようにすると、メールの本文に趣味の情報が入ります。

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

趣味:
<$MTMailPreviewExtParam name="mail_hobby"$>

はてなブックマークの情報

トラックバック(0)

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

コメント(スレッド2件,コメント6件)

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

No.1 木 : 追加したテキストボックスを必須項目にしたら

すみません、教えてください。
テキストボックスを追加して、そのテキストボックスを必須項目にしたら、エラーの画面で、
「フィールド ○○○○ は入力必須です。」
と出ました。この「フィールド ○○○○」を変更したいのですが、どうしたらいいですか?

No.2  Author Profile Page: Re:追加したテキストボックスを必須項目にしたら

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

ご質問の件ですが、以下の記事を参照してください。

http://www.h-fj.com/blog/archives/2008/02/29-120141.php

No.3 木 : Re:追加したテキストボックスを必須項目にしたら

壱さま
すみません、確認不足でした。。
そして、ありがとうございます!

No.4 たまき : 追加項目が表示できない

はじめまして、こんにちは。
MT4.2にてメールフォームプラグインV2.10を使用させていただいています。

まず一通り基本の設定をし、送信テストもうまくいったので、項目を追加してみたのですが、確認画面および送信されるメール本文で追加項目の値が表示されません。

追加したのはURL用のテキストボックスと、要返信用のチェックボックスの二つです。

こちらでの記述を参考に、メールフォーム共通部分に下記を追加し、

<p id="mail-form-url">
 <label for="mail_url">URL</label><br />
 <input type="text" id="mail_url" name="mail_url" size="70"
 value="<$MTMailPreviewExtParam name="mail_url"$>" />
</p>
<p id="mail-form-reply">
 <label for="mail_reply">要返信</label>
 <input type="checkbox" name="mail_reply" id="mail_reply"
 value="1"<MTIf name="mail_reply"> checked="checked"</MTIf> />
</p>

送信確認には下記を、

<p>URL:<$MTMailPreviewExtParam name="mail_url$"></p>
<p>要返信:<MTIf name="mail_reply" eq="1">希望する
<MTElse>不要</MTElse></MTIf></p>

メール本文には下記を追加しました。

URL:<$MTMailPreviewExtParam name="mail_url$">
要返信:<$MTMailPreviewExtParam name="mail_reply$">

確認画面では、要返信の項目はチェックどおり「希望する・不要」を表示することができていますが、メールには反映されず値が空の状態で届きます。
URLの項目については、確認画面・メールともに値が空となります。

自力では解決できなかったため、恐れ入りますがご教示いただければ幸いです。
お忙しいところ大変お手数ではございますが、よろしくお願いいたします。

No.5  Author Profile Page: Re: 追加項目が表示できない

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

いただいた送信確認とメール本文のテンプレートですが、「name="mail_url$"」と「name="mail_reply$"」の「$」とその後の「"」の順序が逆です。
それぞれ「name="mail_url"$」「name="mail_reply"$」に変えてください。

No.6 たまき : (無題)

>壱さま
こんばんは。早速のご回答ありがとうございました。
ものすごく基本的なミスでお恥ずかしい限りです。申し訳ございません。

修正したところ、きちんと表示することができました。
本当にありがとうございました。

コメントする