お知らせ

Movable Type 5 Webサイト製作ガイドVolume 12009年12月7日

Movable Type 5 Webサイト製作ガイドVolume 1」を発売しました。
Movable Type 5を基本からしっかりマスターしたい方のための書籍です。
Movable TypeでWeb製作をされている方などにお勧めです。
PDFによる販売で、当サイトでのみ購入できます(書店では購入できません)

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

メールフォームプラグインV2.0・その12(ラジオボタン/セレクトの追加)

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

メールフォームプラグインで、メールフォームにラジオボタン(<input type="radio"...>)またはセレクト(<select...>~</select>)を追加する方法を解説します。

1.GetQueryParamプラグインのインストール

ラジオボタンやセレクトを使う場合、「GetQueryParam」というプラグインが必要になります。
GetQueryParamプラグインは以下からダウンロードできます。

GetQueryParam_1_13.zip

ダウンロードしたファイルを解凍すると、「GetQueryParam」フォルダができます。
このフォルダを、Movable Typeの「plugins」ディレクトリにアップロードします。

なお、旧版のメールフォームプラグインでもGetQueryParamプラグインを組み合わせていましたが、その時のプラグインよりバージョンアップしています(旧バージョンは1.11)。
旧バージョンを使っていた方は、新バージョンに差し替えてください。

2.送信値/表示値/IDのリストの作成

フォームにラジオボタンやセレクトを入れるには、それぞれの選択肢に対応するタグに、「送信」ボタンがクリックされたときにCGIに送信する値(以後「送信値」と略)と、フォームに表示する値(以後「表示値」と略)を指定することが必要です。

・ラジオボタン

<input type="radio" name="フィールド名" id="フィールドのID" value="送信値" />表示値

・セレクト(のoptionタグ)

<option value="送信値">表示値</option>

メールフォームにラジオボタンやセレクトを入れるには、まず送信値と表示値のリストを作ることから始めます。
このリストは、GetQueryParamプラグインの「MTSetParamList」というコンテナタグで作成します。
以下のように、このタグのコンテナの中に、送信値と表示値を「|」で区切ったものを書きます。
また、「list_name」というアトリビュートで、リストの名前も指定します。
なお、送信値と表示値は同じ値にしても構いません。

<MTSetParamList list_name="リスト名">
送信値1|表示値1
送信値2|表示値2
...
送信値n|表示値n
</MTSetParamList>

さらに、ラジオボタンではそれぞれにIDを振ることもできます。
その場合は、以下のようにして、送信値/表示値/IDを「|」で区切ってリストを作ります。

<MTSetParamList list_name="リスト名">
送信値1|表示値1|ID1
送信値2|表示値2|ID2
...
送信値n|表示値n|IDn
</MTSetParamList>

なお、このタグは、「メールフォーム共通部分」のテンプレートに入れます。

3.input/selectタグの出力

2.の手順で送信値と表示値のリストを作成しましたが、そのリストを利用して、inputやselectのタグを出力します。

リストから送信値と表示値を取り出すには、GetQueryParamプラグインの「MTGetParamList」というコンテナタグを使います。
「list_name="リスト名"」のアトリビュートを指定して、値を取り出すリストを指定します。
また、送信値/表示値/IDは、それぞれ以下のタグで出力することができます。

出力したい値タグ
送信値<MTVar name="gp_value">
表示値<MTVar name="gp_string">
ID<MTVar name="gp_id">

MTGetParamListタグ等を使って、ラジオボタンやセレクトを出力するには、以下のようにタグを組み合わせます。

・ラジオボタン

<MTGetParamList list_name="リスト名">
<input type="radio" name="フィールド名" id="<MTVar name="gp_id">" value="<MTVar name="gp_value">"<MTIf name="フィールド名" eq="$gp_value"> checked="checked"</MTIf> /><MTVar name="gp_string">
</MTGetParamList>

・セレクト

<select name="フィールド名">
<MTGetParamList list_name="リスト名">
<option value="<MTVar name="gp_value">"<MTIf name="フィールド名" eq="$gp_value"> selected="selected"</MTIf>><MTVar name="gp_string"></option>
</MTGetParamList>
</select>

4.初期値の設定

セレクト/ラジオボタンを表示する際に、選択肢の1つを選択した状態にしておくこともできます。
それには、「メールフォーム」のテンプレートに、以下のようなタグを入れます。

<MTSetVar name="フィールド名" value="選択する項目の送信値">

5.例

例えば、「赤」「青」「緑」の色を選べるようにしたいとします。
そのフィールド名を「mail_color」にし、また色のリストには「list_color」という名前をつけるとします。

セレクトで選択できるようにする場合、「メールフォーム共通部分」のテンプレートに、以下のようなタグを入れます。

<MTSetParamList list_name="list_color">
赤|赤
青|青
緑|緑
</MTSetParamList>
<p>色<br />
<select name="mail_color" id="mail_color">
<MTGetParamList list_name="list_color">
    <option value="<MTVar name="gp_value">"<MTIf name="mail_color" eq="$gp_value"> selected="selected"</MTIf>><MTVar name="gp_string"></option>
</MTGetParamList>
</select>
</p>

一方、ラジオボタンで選択できるようにしたいとします。
また、各ラジオボタンには「mail_color_red」「mail_color_blue」mail_color_green」のIDを割り当てたいとします。
この場合は、以下のようなタグを入れます。

<MTSetParamList list_name="list_color">
赤|赤|mail_color_red
青|青|mail_color_blue
緑|緑|mail_color_green
</MTSetParamList>
<p>色<br />
<MTGetParamList list_name="list_color">
<input type="radio" name="mail_color" id="<MTVar name="gp_id">" value="<MTVar name="gp_value">"<MTIf name="mail_color" eq="$gp_value"> checked="checked"</MTIf>><MTVar name="gp_string"> 
</MTGetParamList>
</select>
</p>

また、上記のセレクト/ラジオボタンで、「赤」を初期値にしたいとします。
この場合、「メールフォーム」のテンプレートに以下のタグを入れます。

<MTSetVar name="mail_color" value="赤">

トラックバック(0)

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

コメント(スレッド22件,コメント55件)

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

No.1 max : ラジオボタン等、追加項目の本文受信方法

いつも利用させていただき、ありがとうございます。


ラジオボタンやテキストフィールド等、追加した本文の内容を受信するにはどのようにしたら良いでしょうか?

モジュールテンプレート(mail_body:メール本文)の記述方法がわかりません。

No.2  : Re:ラジオボタン等、追加項目の本文受信方法

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

ご質問の件ですが、独自にメールフォームに追加したフィールドの値は、「<MTMailPreviewExtParam name="フィールド名>」のタグで表すことができます。
なお、サンプルのテンプレートセットの「Movable Type標準テンプレート用(各種機能使用)」に、実際のサンプルがありますので、そちらも参照してください。

No.3 max : ありがとうございます!

こんなに早くご回答いただけるとは!

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


うまくいきました。

感謝です!!

No.4 nog : MTのプラグイン表示で、ヴァージョンが1.11とでています。

MTのプラグイン表示で、ヴァージョンが1.11とでています。
内容は新しくなっていると思いますが。

No.5  : Re:MTのプラグイン表示で、ヴァージョンが1.11とでています。

>nogさん
こんにちは。

バージョン番号の表記の修正が抜けている点をご指摘いただき、ありがとうございました。
修正してアップロードしなおしておきました。

No.6 nb : 件名をプルダウン形式のセレクトとするには

遅くにすいません。お世話になります。
メールフォーム共通部分で、タイトル(mail_subject)部分をプルダウン形式で選択できるようにするにはどのようにすればよいか教えていただけるとありがたいです。
よろしくお願いします。

No.7  : Re:件名をプルダウン形式のセレクトとするには

>nbさん
こんにちは。

タイトル(mail_subject)も、この記事の通りの方法で、プルダウン(セレクト)にすることができます。

No.8 nb : (無題)

早速ありがとうございます!
プルダウン形式にはなんとかなったのですが、

<p id="mail-form-subject">
  <label for="mail_subject">タイトル(全角)</label><br />
  <input id="mail_subject" name="mail_subject" size="30" value="<$MTMailPreviewSubject$>" style="width : 90%;" />
  <MTSetParamList list_name="type">
  ---選択してください---|---選択してください---
  aaa|aaa
  bbb|bbb
  ccc|ccc
  ddd|ddd
<MTSetVar name="type" value="---選択してください---">
</MTSetParamList>
  <select name="type" id="mail_subject">
  <MTGetParamList list_name="type"><option value="<MTVar name="gp_value">"<MTIf name="type" eq="$gp_value"> selected="selected"</MTIf>><MTVar name="gp_string"></option>
  </MTGetParamList>
  </select>
</p>

としたところ、
タイトル欄の下に1行のテキストフィールド、その下にプルダウンとなります。また、プルダウンの枠が左にずれてしまう(他のフィールドとそろわない)のですが、どうすればいいでしょうか?汗

No.9  : (無題)

>nbさん

こんにちは。

1.「<input id="mail_subject" name="mail_subject" size="30" value="<$MTMailPreviewSubject$>" style="width : 90%;" />」の行を削除してください。
2.selectタグは「<select name="mail_subject" id="mail_subject">」にしてください。
3.「<MTSetVar name="type" value="---選択してください---">」の行は「</MTSetParamList>」の後に移動してください。

No.10 nb : (無題)

壱 さま

お忙しいのにありがとうございます。
ご指示のように修正しなんとか形になりました。
現在、少し解決できていない箇所がありますので、何度も大変恐縮ですが、ご教示くだされば幸いです。
①プルダウンのフィールドだけ、他の入力フィールドに比べて左によっています。できればあわせたいです。
②テスト送信したところ、送信確認画面で、選択したものが反映されず、---選択してください---となります。
③共通部分や送信確認テンプレートで、郵便番号というテキストフィールドを追加し、郵便番号:で指定しましたが、送信確認画面では、郵便番号:空欄(なにも反映されていない)状態になります。
④テスト送信を実行し、メールソフト上は日本時間で表示されているものの、印刷するとマイナス9時間表示となります。これはどこを直せばよいでしょうか?(このメールフォームの仕様とは違うかもしれませんが)

よろしくお願いします。

No.11  : (無題)

>nbさん
こんにちは。

1.について
スタイルシートが関連していると思われますので、そちらのメールフォームを拝見しないと何とも言えません。

2.について
先ほどのコメントの3.に誤りがありました。
「メールフォーム共通部分」のテンプレートから3.で書いた行を削除し、「メールフォーム」のテンプレートの先頭に以下のタグを追加してください。

<MTSetVar name="mail_subject" value="---選択してください---">

3.について

http://www.h-fj.com/blog/archives/2008/02/13-105945.phpの解説を参照してください。

4.について

このプラグインでは、メールの時刻については何も操作していません。
サーバーの設定や、メールソフトの設定に依存する問題ではないかと思います。

3.について

No.12 なかた : 確認画面について

こんにちは、壱様

なかたと申します。

下記URLのページでマニュアル通り色々と追加しました。貴重な情報の公開ありがとうございます。確認画面に進むとセレクトボックスで選んだ項目が初期値の赤に戻ってしまいます。(確認画面スタイルシート適用していません、見えづらくて申し訳ありません)

入力画面で例えば「緑」を選んだら確認画面でも「緑」と表示するにはどうすればいいのでしょうk?ご指導いただけましたら幸いです。

http://atelier-nakata.net/web-design/mailform.html

No.13  : Re:確認画面について

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

ご質問の件ですが、この記事の「4.初期値の設定」と「5.例」を良くお読みいただいて、テンプレートを見直してみてください。

No.14 壱様 : たびたび恐れ入ります。

「4.初期値の設定」と「5.例」は確認しました。伝え方が悪かったのかもしれません。解決できませんでしたので再度ご対応をお願いします。

送信メールフォーム「http://atelier-nakata.net/web-design/mailform.html」では初期値の設定を出来ています。を「mail_common:メールフォーム共通部分」のテンプレートで設定しています。

送信メールフォーム「http://atelier-nakata.net/web-design/mailform.html」で仮に「赤」を選べば、メール確認画面の表の中では「赤」になります。

しかしその確認画面のメール修正フォームでは「」にどのような対応をすれば送信フォームで選んだ「赤」を表示できるのでしょうか?

理解力がなくご面倒かもしれませんが、ご対応をお願いします。

No.15 なかた : 再度のたびたび恐れ入ります。

壱様、恐れ入ります。先ほど初期値設定の「MTSetVar name="mail_color" value=""」を外したところ、メール確認画面の修正フォームでは選んだ項目になっていました。

「MTSetVar name="mail_color" value=""」は送信フォーム(入り口)のみに設定すればいいのですね?

No.16  : Re:再度のたびたび恐れ入ります。

>なかたさん
こんにちは。

お書きになったとおり、MTSetVarタグは最初に表示されるページ(「メールフォーム」テンプレート)にのみ入れてください。

No.17 なかた : ご確認をお願いします。

壱様

何度もお問い合わせ申し訳ありません。「http://atelier-nakata.net/web-design/mailform.html」から確認するとSafariのみエラーが出ず進みますが、IEやFirefox・Operaでは「設定を読み込むのに失敗しました」とエラーになります。(macのみで確認していたため)これはまた、どこかが間違っているんですね、、、。お手数おかけいたしますがご連絡くださいませ

No.18  : Re:ご確認をお願いします。

>なかたさん
こんにちは。

「メールフォーム共通部分」のテンプレートで、以下のタグの最後の「" />」の前に、余分な改行が入っているようです。
その改行を削除してください。

<input type="hidden" name="mail_setting" value="<$MTGetVar name="mail_setting">" />

No.19 なかた : 本当にありがとうございました。

今のところ解決しているかと思います。また、不明点があればご質問させていただきます。本当に快い対応をありがとうございました。

No.20 やま : ちょっと特殊な使い方かもしれませんが

お世話になります。
ラジオボタンを利用して、ブログ記事の全ページ末尾にちょっとしたアンケート代わりとして設置中なのですが、残念ながらこのままだと、どのページの記事に対する評価なのかわかりません。
隠しフィールド(というのでしょうか)を利用して、ページタイトル等をメール本文テンプレートに送る方法を教えていただけるとたすかります。
お忙しいここと思いますがよろしくお願いします。

No.21  : Re:ちょっと特殊な使い方かもしれませんが

>やまさん
こんにちは。

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

http://www.h-fj.com/blog/archives/2008/12/26-101626.php

No.22 やま : (無題)

素早い対応にびっくりです。
おかげさまでうまくいきました。
ありがとうございました。

No.23 kaku : プルダウン形式

メールフォーム共通部分で、タイトル(mail_subject)部分をプルダウン形式で選択できるようにしているのですが、mail_body:メール本文とmail_preview:送信確認に反映させるにはどうしたらいいのでしょうか?

No.24  : Re:プルダウン形式

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

現状のプラグインでは、タイトル(mail_subject)は変数に設定していません。
そこで、送信確認ページにタイトルの選択を反映させるには、メールフォーム共通部分のテンプレートの先頭に以下のタグを入れて、タイトルを変数に設定してから、記事の手順2以降を行ってください。

<mt:SetVarBlock name="mail_subject"><$mt:MailPreviewSubject$></mt:SetVarBlock>

なお、メール本文テンプレートでは、<mt:MailPreviewSubject$gt;タグで、送信されたタイトルを出力することができます。

No.25 kaku : ありがとうございました!

早速のご回答ありがとうございます!
なんとかできました!!

No.26 ため : 確認画面でプルダウンが初期値に戻ってしまいます。

こんにちは。

プルダウンメニューを設定しました。
「1枚」、「2枚」という項目のプルダウンなのですが、
「2枚」を選択した後、確認画面上でも「2枚」と表示されいるのですが、
確認画面下のメールフォームのプルダウンでは「1枚」に戻ってしまいます。
これを回避するにはどうしたらよいのでしょうか。

またデフォルトで設定してあった「本文」が不要なので
削除しましたが、送信画面で「本文が正しく入力されていない」旨のエラーが出てしまいます。
こちらも回避する方法を教えてください。

お手数をおかけしますがよろしくお願いいたします。

No.27  : Re:確認画面でプルダウンが初期値に戻ってしまいます。

>ためさん
こんにちは。

ご質問の前半の件ですが、テンプレートタグの組み方をどこかでミスしているのではないかと思います。
もう一度この記事をよくお読みいただいて、タグを確認してみてください。

また、後半の件ですが、デフォルトでは本文/タイトル/名前のフィールドが入力必須になっています。
入力必須のフィールドを変える方法は、以下のページを参照してください。

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

No.28 ため : (無題)

早速のご回答ありがとうございました。

例をコピーし書き換える箇所のみ変更したつもりなのですが、
どうもうまく行きません。

以下のように組みました。

これ以外にも変更しなくてはならない箇所があるのでしょうか。

お手数をおかけしますがよろしくお願いいたします。

No.29  : (無題)

>ためさん
こんにちは。

タグの組み方は問題ないようです。
とすれば、テンプレート内でのタグを入れる位置に問題があるのではないかと思われます。

ちなみに、サンプルテンプレートの「Movable Type 4.2標準テンプレート用(各種機能使用)」に、セレクトを使う例が入っています。
そちらのサンプルテンプレートをインストールして、テンプレートの書き方を見てみると良いかと思います。

No.30 ため : (無題)

ご回答ありがとうございました。

いろいろ試して見ます。

ちなみにこの現象はFirefox3で起こっています。
IE6、Safariでは問題ありませんでした。

No.31 ため : やはりだめでしたので、確認画面上のフォームをなくすことはできますか?

お世話になっております。
こちらの件、やはり原因がわかりませんでした。
一部ブラウザで、確認画面でプルダウンが初期値に戻ってしまいます。

ですので、確認画面上でフォームを無くしたい(入力内容に間違いがある場合は、ブラウザ上の戻るボタンをご利用くださいというナビゲーションにしたい)と思っているのですが、
何か方法はございますでしょうか。
お手数をおかけしますがどうぞよろしくお願いいたします。


> >ためさん
>こんにちは。

>タグの組み方は問題ないようです。
>とすれば、テンプレート内でのタグを入れる位置に問題があるのではないかと思われます。

>ちなみに、サンプルテンプレートの「Movable Type 4.2標準テンプレート用(各種機能使用)」に、セレクトを使う例が入っています。
>そちらのサンプルテンプレートをインストールして、テンプレートの書き方を見てみると良いかと思います。

No.32  : Re:やはりだめでしたので、確認画面上のフォームをなくすことはできますか?

>ためさん
こんにちは。

確認画面からフォームをなくすことは可能ですが、それ以前にフォームで入力された値がサーバーに正しく送信できていないようですので、フォームをなくしても問題は解決しないと思います。

なお、確認画面からフォームをなくす手順は、大まかには以下のようになります。

1.「mail_preview:送信確認」のテンプレートから、「<$MTIncludeMailFormCommon$>」タグを削除します。
2.1.のタグの代わりに、「mail_common:メールフォーム共通部分」のテンプレートの内容を、「mail_preview:送信確認」テンプレートに貼り付けます。
3.2.で貼り付けた部分のうち、<form>~</form>タグの間を残し、それ以外を削除します。
4.<form>~</form>タグの間で、入力用の要素(inputタグ)などを残し、それ以外の要素をすべて削除します。
5.inputタグの要素は、typeをすべてhiddenに置き換えます。
6.selectやtextareaなどのタグも、<input type="hidden"・・・>」のタグに置き換えて、メールフォームで入力された内容を、サーバーに送信できるようにします。

No.33 ため : 確認画面

度々すみません。

確認画面のテキスト部分はきちんと選択されたものが
反映されているのですが、
プルダウンのみ元にもどっている状態です。
ですので、再度確認画面でプルダウンを選択した上で、
送信しないといけません。
このような場合でもフォームを無くしても無理なのでしょうか。

どうしても使いたい機能ですので、
何とか解決したいです。

お手数をおかけします。


> >ためさん
>こんにちは。

>確認画面からフォームをなくすことは可能ですが、それ以前にフォームで入力された値がサーバーに正しく送信できていないようですので、フォームをなくしても問題は解決しないと思います。

>なお、確認画面からフォームをなくす手順は、大まかには以下のようになります。

>1.「mail_preview:送信確認」のテンプレートから、「」タグを削除します。
>2.1.のタグの代わりに、「mail_common:メールフォーム共通部分」のテンプレートの内容を、「mail_preview:送信確認」テンプレートに貼り付けます。
>3.2.で貼り付けた部分のうち、~タグの間を残し、それ以外を削除します。
>4.~タグの間で、入力用の要素(inputタグ)などを残し、それ以外の要素をすべて削除します。
>5.inputタグの要素は、typeをすべてhiddenに置き換えます。
>6.selectやtextareaなどのタグも、」のタグに置き換えて、メールフォームで入力された内容を、サーバーに送信できるようにします。

No.34  : Re:確認画面

>ためさん
こんにちは。

有償で良ければ、私がそちらのサーバーで作業して、原因を探したいと思います。
ご希望であれば、メールフォームでご連絡ください。

No.35 駆出しデザイナー : ラジオボタンの選択内容が反映されません。

ラジオボタンで以下の3項目に分けて、選択方式にしました。

【ご連絡方法】
○携帯電話 ○TEL ○e-mail

メールの確認画面では、フォームのラジオボタンの選択部分は通常通り選択されているのですが、確認の項目の部分では項目に何も表示されません。

ファーム共通部分
<MTSetParamList list_name="list_apoint">
携帯電話|携帯電話|mail_apoint_mobile
TEL|TEL|mail_apoint_tel
E-Mail|E-Mail|mail_apoint_email
</MTSetParamList>
<p>ご連絡方法</p> </td>
<td bgcolor="#ffffff">
<p class="form">
<MTGetParamList list_name="list_apoint">
<input type="radio" name="mail_apoint" id="<MTVar name="gp_id">" value="<MTVar name="gp_value">"<MTIf name="mail_apoint" eq="$gp_value"> checked="checked"</MTIf>>
<MTVar name="gp_string">
</MTGetParamList>
</select>
</p>


メール本文
ご連絡方法
携帯電話:<$MTMailPreviewExtParam name="mail_apoint_mobile"$>
TEL :<$MTMailPreviewExtParam name="mail_apoint_tel"$>
EMAIL:<$MTMailPreviewExtParam name="mail_apoint_email"$>


送信確認
<p>ご連絡方法</p>
<p>携帯電話</p>
<p><$MTMailPreviewExtParam name="mail_apoint_mobile"$></p>
<p>TEL</p><p><$MTMailPreviewExtParam name="mail_apoint_tel"$></p>
<p>E-MAIL</p><p><$MTMailPreviewExtParam name="mail_apoint_email"$></p>

以上、ご教授願えますでしょうか。

No.36  : Re:ラジオボタンの選択内容が反映されません。

>駆出しデザイナーさん
こんにちは。

いただいたメールフォーム共通部分テンプレートだと、メールフォームのCGIには、「mail_apoint」の名前で、「携帯電話」「TEL」「E-Mail」のどれかの値が送信されます。
したがって、メール本文や送信確認のテンプレートでは、以下のようにして、連絡方法を出力するようにします。

ご連絡方法:<MTMailPreviewExtParam name="mail_apoint">

No.37 ふじ : 不明なタグ

はじめまして。
お世話になります。
よろしくお願い致します。

メールフォーム プラグインを使用させて頂いています。

共通部分に<MTSetParamList>を用いたフォームを作ったのですが
<MTSetParamList> <MTGetParamList>
が 不明なタグ として 認識されていません。

サンプルのテンプレートをインストールした際にも
共通部分の
<MTSetParamList>
<MTGetParamLIst>
ともに不明なタグとなってしまっています。

一度 アンインストールして 再度インストールし直したいと思ったのですが、 アンインストール方法は FTPで削除するだけで良いのでしょうか?

お手数をおかけし申し訳ありませんが、教えて頂ければ幸いです。


よろしくお願い致します。

No.38  : Re:不明なタグ

>ふじさん
こんにちは。

MTSetParamList/MTGetParamListタグは、GetQueryParamプラグインによって追加されます。
以下のページに従って、プラグインをインストールしてください。

http://www.h-fj.com/blog/archives/2008/02/19-134955.php

No.40 ふじ : ありがとうございました。

壱さま

早速ありがとうございました。
肝心のものをインストール 忘れておりました。
お手数をおかけし申し訳ありません。

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

No.39 駆出しデザイナー : プルダウン式メニューにブログ記事のタイトルリストを入れたい

前回、ご回答ありがとう御座いました。
今回、また質問なのですが、フォームにプルダウン式のフィールドを追加したいと思っております。そのプルダウンの内容が、各ブログ記事のタイトルをリストとして並べたいのですが、一つ一つタイトルを記述していく方法ではなく、タイトルを自動的に取得する方法にし、ブログ記事が追加されると同時に、フォームのプルダウンメニューにも反映されるようにしたいです。このような事は可能でしょうか?

具体的には、どのようにしたら、すべてのブログ記事のタイトルを取得できるのかが、わからなくて困っております。

お忙しいところ何度も質問してすみませんが
ご教授をお願い致します。

No.41  : Re:プルダウン式メニューにブログ記事のタイトルリストを入れたい

>駆出しデザイナーさん
ブログ記事の一覧は、MTEntriesタグで出力することができます。
このタグのブロックを、MTSetParamListタグに入れるとよいでしょう。
例えば、以下のようにすると、送信値/表示値ともにブログ記事のタイトルになったリストができます。

<MTSetParamList list_name="リスト名">
<MTEntries lastn="0">
<MTEntryTitle>|<MTEntryTitle>
</MTEntries>
</MTSetParamList>

No.42 駆出しデザイナー : ありがとうございます。

壱様

上記の通り記載したら、ブログ記事のタイトルがドロップダウンにて選択できるようになりました。
ここで、もう一つ追加の機能を付け加えたいのですが、それは、選択しない場合一番上にドロップダウンリストの先頭に「選択しない」という項目を付け加えたいのですが以下のように記述すると「選択しない」の項目が一個飛ばしで出てきてしまいます。ここの記述方法はどのようにするのでしょうか?

<MTSetParamList list_name="リスト名">
<MTEntries lastn="0">
選択しない|選択しない
<MTEntryTitle>|<MTEntryTitle>
</MTEntries>
</MTSetParamList>

ドロップダウンメニューでは
選択しない
タイトル1
選択しない
タイトル2
選択しない
タイトル3
選択しない
タイトル4
選択しない
タイトル5

・・・となってしまいます。

No.43 駆出しデザイナー : すみません。自己解決いたしました。

上記の件、以下のように記述することで解決致しました。
ご迷惑お掛けしました。

<MTSetParamList list_name="リスト名">
選択しない|選択しない
<MTEntries lastn="0">
<MTEntryTitle>|<MTEntryTitle>
</MTEntries>
</MTSetParamList>

No.44 kiki : ラジオボタンの項目が1つしか表示されません。

はじめまして、本日mailformプラグインデビューしました。
早速カスタマイズとあれこれ試しておりますが、ラジオボタンで躓きました。↓該当箇所抜粋

各種機能付きテンプレート中の
<MTSetParamList list_name="sex_values">
男|男|mail_radio0
女|女|mail_radio1
</MTSetParamList>

ラジオボタン追加のサンプル
<MTSetParamList list_name="list_color">
赤|赤|mail_color_red
青|青|mail_color_blue
緑|緑|mail_color_green
</MTSetParamList>

もですが、「男」、「赤」など一番始めに書いた項目しか表示されません。並びを変えても同じ現象です。

対処方法をご伝授ください。

No.45  : Re:ラジオボタンの項目が1つしか表示されません。

>kikiさん
こんにちは。

ご質問の件ですが、問題が出ているテンプレートをお送りいただけないでしょうか。

No.46 kiki : Re:ラジオボタンの項目が1つしか表示されません。

早々のご返事、ありがとうございます。

その後も試しておりました…がやはり先頭の項目だけの表示です。※そのまま使ってます。

どのようにしてお送りしたらいいのでしょう?

※ちなみに、使用のテンプレートは、こちらからDLした「mt_standard_42_full」です。

No.47  : Re:ラジオボタンの項目が1つしか表示されません。

>kikiさん
こんにちは。

サンプルテンプレートのままでラジオボタンが正しく表示できないとなると、何か想定外の現象が起こっている状況です。
申し訳ありませんが、そちらでお使いのサーバーでプラグインの動作をデバッグしてみないと、原因は不明です。

No.48 kiki : Re:ラジオボタンの項目が1つしか表示されません。

ご回答、ありがとうございます。

インストールからやり直してみたところ、
(男・女)ラジオボタン問題なく表示されました。

ヨシと思い、例5のように

赤|赤
青|青
緑|緑

を設定し再構築・・・すると、
「男」、「赤」のようにやはり先頭の項目しか表示されません。

ラジオボタン追加を辞め、その10のテキストボックスの追加をしてみました。
問題なくできるのですが、ラジオボタンは先頭の項目「男」のみです。※女を先に書くと「女」です。

ちなみにコードは何も触らず、テキストエディタで一旦開き、
それをそのままコピペし、再構築してみました。
「男」とやはり先頭の項目のみです(><)

テキストエディタで開く箇所で問題が起こっているようで?
保存する文字コードが原因なのでしょうか?

お心あたりありましたら、アドバイスお願いします。

No.49  : Re:ラジオボタンの項目が1つしか表示されません。

>kikiさん
こんにちは。

MTSetParamListタグでは、改行文字で行の区切りを判断しています。
いただいた症状からすると、プラグインで想定していないような改行コードが保存されているのではないかと思われます。

文字コードが原因であることも考えられますので、可能であれば、文字コードを変えてみてください。
また、お使いのWebブラウザに依存する問題かも知れません。他のWebブラウザでも動作を試してみてください。

No.50 kiki : Re:ラジオボタンの項目が1つしか表示されません。

早々のご返答、ありがとうございます。

テキストエディタは「TeraPad」で、
通常以下の状態で使ってます。
----------------------------
漢字改行コードを自動認識
初期漢字コード:SHIFT-JIS
初期改行コード:CR+LF
保存は両者自動です。
----------------------------
改行、文字コード、ブラウザ(IE7、Firefox3)検証も
試してみましたが、なかなか回避されません。

引続きトライしてみます(^^)

追伸:
皆さんはどうされてますでしょうか?
お勧め設定があればご伝授ください。

No.51 てつこ : 送信確認画面のラジオボタンについて

お世話になります。
下記の用にメールフォームにラジオボタンを設置しました。

<MTSetParamList list_name="list_quote">
書籍の内容について| 書籍の内容について<br />|mail_quote_content
書籍のお求め、ご請求について| 書籍のお求め、ご請求について<br />|mail_quote_claim
このWEBサイトについて| このWEBサイトについて<br />|mail_quote_web
</MTSetParamList>
<p>
<MTGetParamList list_name="list_quote">
<input type="radio" name="mail_quote" id="<MTVar name="gp_id">" value="<MTVar name="gp_value">"<MTIf name="mail_quote" eq="$gp_value"> checked="checked"</MTIf>><MTVar name="gp_string">
</MTGetParamList>
</select>
</p>

メールフォームで選択された値を送信確認で表示させたいのですが、
送信確認には下記の様に記述しました。
<MTGetParamList list_name="list_quote">
<input type="radio" name="mail_quote" id="<MTVar name="gp_id">" value="<MTVar name="gp_value">"<MTIf name="mail_quote" eq="$gp_value"> checked="checked"</MTIf>><MTVar name="gp_string">
</MTGetParamList>

メールフォームから、確認ボタンを押下すると、
Publish error in template 'mail_preview:送信確認': Error in <mtGetParamList> tag: List 'list_quote' is not defined.
の様なエラーがでてしまうのですが、
メールフォームプラグインV2.0・その12(ラジオボタン/セレクトの追加)の通りに設定していると思うのですが、
どこが違っているのか教えていただけたら、幸いです。

No.52  : Re:送信確認画面のラジオボタンについて

>てつこさん
こんにちは。

MTSetParamListタグのブロックとMTGetParamListタグのブロックは、同じテンプレートにある必要があります。
コメントの内容からすると、送信確認テンプレートには、MTGetParamListタグのブロックしか入れていないのではないかと推測します。
送信確認テンプレートにも、MTSetParamListタグのブロックを入れてください。

No.53 てつこ : Re:送信確認画面のラジオボタンについて

壱さま
ありがとうございました。
解決できそうです。

No.54 棗 : メールの題名について

お世話になります。
このメールフォームの題名は基本設定の方から決めれるようになっていますが、フォームのセレクトボタンで選んだ項目をメールの題名にするということはできませんでしょうか?
ご回答いただけると幸いです。
宜しくお願いいたします。

No.55  : Re:メールの題名について

>棗さん
こんにちは。

申し訳ありませんが、ご要望のような件は、別注のプラグインにて承っております。

コメントする