Pardot フォームのまとめ

[Pardotの質問と回答をまとめに戻る](https://qiita.com/Keiji_otsubo/items/a3ccd1370697dd914723)


+ [Pardot フォーム上の項目動作について : テクサポ 日本](https://qiita.com/Keiji_otsubo/items/d6842fc97ceb285f1fda)
+ [Pardot FormでJava Scriptを使った検証ルールを書く](https://qiita.com/Keiji_otsubo/items/9da83345b5390667bd27)

+ [Pardot フォーム項目をロックする方法はありますか?プロスペクトのメールを事前入力するフォームを Pardot で作成しようとしていますが、そのメールを編集可能にしたくありません。](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000O68zq)

:::note
はい、可能ですが、ベスト プラクティスではありません。

ここでの一般的な原則は、電子メール アドレスを含む HTML フィールドを読み取り専用に設定することです。もちろん、これは空でない場合 (既存のプロスペクト) にのみ実行する必要があります。そうしないと、新しいプロスペクトがその値を入力できなくなります。次のような JS (jQuery) 行 ([フォームの上] > [コード ソース] モード) は、これを行います。

```
$("#pardot-form > p.form-field.email.pd-text.required.required-custom input").prop('readonly', true);
```

必要に応じて、メールが空でない場合にのみ、条件付きで読み取り専用属性をフィールドに追加するように構築できます。

ただし、電子メールを変更できるようにすることは良い習慣であるため、そのようなことをしないことをお勧めします (これが、電子メール フィールドで [以前に完了した場合でも常に表示する] のチェックを外すことができない理由です)。
:::

+ [フォーム登録で、姓に「姓名」が登録されてしまう場合がある](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000IQi1PSAT)

:::note
フォームに設定している「名」の項目は必須項目でしょうか？

もし、「名」が必須ではない場合、入力する人によっては「姓」の方にフルネームで入れてしまう方は少なからずいるかと思うのでそれが原因かと思います。
:::

+ [「https：//」を使用すると、私の会社のPardotユーザーにフォームフィールドが表示されません。](https://trailhead.salesforce.com/en/trailblazer-community/feed/0D54S00000C54Kd)

:::note
The phenomenon that is happening is similar to this.

https://help.salesforce.com/articleView?id=000320091&language=en_US&mode=1&type=1
:::


+ [同一人物による 異なるメールアドレスを使用した 同フォームからの複数回登録の防止策](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000LHVYiSAP)

:::note
Salesforce側でカスタムの重複チェックルールを作って管理する方法が説明されています。

Deduplication

A common sync error is a deduplication error. It happens when Pardot is trying to add a prospect, but the matching rule stops Pardot because adding the prospect will create a duplicate in Salesforce. (It’s in Pardot, but not syncing with a Salesforce lead or contact record, even though it may have an assigned user.)

https://greenkeydigital.com/duplicates/
:::

+ [Pardotのフォーム通知メール内にある「Original Referring URL」を使ってレポートを作成したいのですが、プロスペクトで「Original Referring URL」の情報がどこで確認できるのかが分かりません。](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007eqPXl)


:::note
以下の手順でcsvで確認できるようなことが回答されています。

 if you go to Reports>Conversions in Pardot and export that report to csv, you can more easily view the referring URL if captured for a list of prospects. 

https://trailhead.salesforce.com/trailblazer-community/feed/0D54S00000A8i8FSAR
:::

+ [Account Engagementのフォームを＜iframe＞埋め込みでWebサイトで利用しています。フォームの送信前に、JavaScriptでフォームの内容をチェック(少し時間のかかる処理; 1秒想定)し、hidden項目をJavaScriptで設定してから送信したいと思っています。](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000KBTeL)

+ [AEフォームに前の回答の値が保持されている](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000KDXGM)

:::note
以下の投稿を読むとクッキーに情報が紐づいているようですね。 
可能であれば、シークレットモードで試してもらって挙動を確かめてもらうのがいいかもしれません。 

https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007ajZ7HSAU

https://trailhead.salesforce.com/trailblazer-community/feed/0D54S00000A8ctgSAB
:::

+ [Account Engagementのフォーム上限数](https://trailhead.salesforce.com/trailblazer-community/feed/0D5KX00000KhFqx)


# フローを使う

+ [フォーム送信日時をプロスペクトカスタム項目に保持したい](https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54S00000Jg8DASAZ)

:::note
フローでできます 
1. セールスフォースで日付時間項目を作成します 
2.「資料請求フォームが送信されました」のようなトリガー項目を作成します。例えば、チェックボックスなど。またはフォーム登録日項目でも大丈夫です 
3. Salesforceのフローを作成します。トリガー項目(#2)がonになったら(例えば登録日の値が変わったとかチェックボックース項目がtrueになったとか、「今」の日付時間の値を日付時間(#1)項目を更新します 
:::

+ [既存取引先の取引先責任者がフォームを通過すると取引先所有者にSlack通知する方法](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007agYdP)

上記と同じようにできそう

# フォーム通過時の自動応答メール

+ [自動応答メール と同様の内容もしくはこのフォームにて回答のあった項目内容をSalesforceユーザ以外がメールで確認する方法](https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007T5Hkj)

:::note
もし、メールを違う人にも送った場合、その人が自動応答のメールを開いたときに思わぬ集計結果を引き起こしませんか？

同じアクション内からSalesforceのタスク（ToDo）を作成できるようなことが紹介されています。でもSalesforceのユーザ以外が送り先なんですよね。特定のTaskが作成されたら外部に通知するような自動化処理がもう一つ必要かもしれません。

Create Salesforce Tasks from Pardot
One Pardot action (via automation rules, completion actions, Engagement Studio actions) is to create a Salesforce task.

https://www.salesforceben.com/notify-user-in-pardot-alert-the-sales-team-with-email-notifications/
:::