web-dev-qa-db-ja.com

Webフォームの電子メールテンプレートで[submission:values]を使用する方法

Webform 7.x-4.0-alpha6バージョンモジュールを有効にしています。

20個のフォームコンポーネントを持つWebformノードがあります。メール設定にメールを1つ追加し、トークンを使用するメールテンプレートを作成しました:[submission:values]

次に、メッセージを送信するWebフォームをテストします。問題は、[submission:values]非常に単純な方法でコンポーネントの値を出力し、ブレークラインやセミコロンを付けずに、各コンポーネントのtitleおよびvalue。何かのようなもの:

Name Jhon
Addresss Myaddress 12 
CP 19932
....

20個のコンポーネントがあると、メールが完全に判読不能になります

私の質問は:より良い方法でそれらを印刷する方法(トークン)はありますか?少なくともタイトルと値の間にセミコロンを追加し、そしてタイトルを作るbold?または出力をテーブルに入れますか?

    Name: Jhon
    Addresss: Myaddress 12 
    CP: 19932

トークンを使用して、コンポーネントを別々の方法で出力できることを知っています。タイトルには[webform:{component} -title]、値には[webform:{component} -value]

そして、私はそれらをスタイルすることができます。しかし、メールテンプレートにすべてのコンポーネントを表示する必要があるため、これは時間の無駄です

更新:このモジュールは見つかりましたが、役に立ちません: http://drupal.org/project/webform_tokens

9
chefnelone

私はそのような問題はありませんが、Webフォームから特別な値を取得する方法を知っています。

送信されたデータからのWebformトークン。値とフィールドラベルが含まれます。 「?」を「フィールドキー」に置き換えます。値だけに「:nolabel」を追加します。

したがって、[submission:values:?:nolabel]を使用できます。ここで、?はコンポーネントのフィールドキーです。

 Name: [submission:values:name:nolabel]
 Address: [submission:values:address:nolabel]

私にとって結果は[submission:values]と同じです:

名前:ケイト
住所:モスクワ、ロシア:)

Webformバージョン:7.x-4.0-alpha6(7404)。

Webform Tokensモジュールは必要ありません。

更新

HTMLメールを使用している場合、ラベルはtheme_form_element_labelを介して出力され、<label>Title</label>\nのようになります。

webform-submission.tpl.phpをオーバーライドできます。このファイルを、admin/config/system/mailsystemからのメールをレンダリングするためのテーマにコピーします。
:を追加するには、レンダー配列を変更するだけです。

if ($format == 'html') {
  foreach ($renderable as $i => $item) {
    if (is_array($item) && !empty($item['#title'])) {
      $renderable[$i]['#title'] .= ':';
    }
  }
}

print drupal_render_children($renderable);

ただし、自分で置換を完全に出力できます。

10
kalabro

WebフォームのSend e-mail as HTMLオプションを使用します。

Mime Mail および Mail System モジュールをインストールしてadmin/config/content/webformおよびFormat[〜#〜] html [〜#〜]に設定します。

1
Prem Patel

Gridコンポーネントを使用している場合は、フィールドキーと質問キーの両方でそのトークンを呼び出す必要があることにも注意してください。グリッドは、たとえば調査を行っているときに、各行に次のようなラジオボタンを使用して、1〜3のスケールで評価するようユーザーに求めている場合によく使用されます。

質問例:

以下を1 =高、3 =最低でランク付け

+---------------+-----+-----+-----+
|   Breweries   |  1  |  2  |  3  |
+---------------+-----+-----+-----+
| Lighthouse    | [o] | [o] | [o] |
| Phillips      | [o] | [o] | [o] |
| Whistler      | [o] | [o] | [o] |
+---------------+-----+-----+-----+

質問2の答えだけの値を出力するには、次のようにします。
ビールの質問2の値は:[submission:values:my_beer_field:phillips]

0
PWM