2017-01-27 8 views
0

私は、同じpageTypeに基づいてそれぞれの250ページに含めるフォームを持っています。したがって、私はテンプレートにフォームリファレンスを含めて、すべてのページにレンダリングさせたいと思っています。これはずっと働いているようだ。 しかし、私は電子メールをトリガするフォームを持っていますcontactEmailプロパティ(ページのプロパティとして入力/ pageTypeで定義)Kentico 9:フォームがあるページに基づいてフォームアクションをカスタマイズする

私は推測しているでしょうカスタムフォームコントロールや代替フォームを作成しますが、どこから始めたらいいのか分からず、ドキュメントを数日間流しています。 私は電子メール通知を有効にして、{%CurrentDocument.ContactEmail#%}を受信者の電子メールとして設定しようとしましたが、動作していないようです。

フォームビルドでマクロを使用できるコンテキストがわからない、またはフォーム内の現在のドキュメントフィールド値を参照する方法があるかどうかわかりません。

+0

ようこそスタックオーバーフロー!最初に[ツアー(http://stackoverflow.com/tour)に参加して[良い質問をする方法](http://stackoverflow.com/help/how-to-ask)を学んで[最小、完全、および検証可能](http://stackoverflow.com/help/mcve)の例を参照してください。そうすれば、私たちがあなたを助けやすくなります。 –

答えて

0

CurrentDocumentは、電子メールの送信時には使用できませんが、フォームを保存するときに使用します。回避策として、フォームに新しいフィールドを追加することをお勧めします。 ContactEmailを開き、デフォルト値として{% CurrentDocument.ContactEmail #%}を設定します。フィールドがページ上にあることを確認する必要がありますが、カスタムレイアウトや代替フォームを使用してCSSで非表示にする必要があります。

フォームデータを保存すると、CurrentDocument.ContactEmailの値がフォームと共に保存されます。

最後のステップは、{% ContactEmail %}マクロのフォームの[電子メール通知]タブのToフィールドを更新することです。

関連する問題