ウェブフックカスタムスクリプトへのフォーム送信を受け取る

カスタムスクリプトへのフォーム送信を受信するには、自動通知システムであるwebhookを使用します。取得されたデータはPOSTで配信されます。
Webhookを有効にするには、サイト設定 → フォーム → Webhookに進みます。
スクリプトのアドレスを入力してください。クッキーを送信する必要がある場合は、チェックボックスを選択します。変更を保存します。
:スクリプトへのリンクが利用可能で、スクリプトが5秒以内に応答しなければならない。そうでない場合、データは送信されず、システムはさらに2回、1分につき1回の送信を試みます。
注意:スクリプトは安全なHTTPSプロトコルを使用する必要があります。
ページに移動し、フォームブロックのコンテンツパネルで "WEBHOOK "チェックボックスを選択します。

"保存して閉じる "をクリックし、ページを公開します。誰かがフォームに入力すると、データはサイト設定で指定したスクリプトのアドレスにPOSTで送信されます。
あなたのEメールに投稿を送信するスクリプトのサンプル
スクリプトをサーバーに置き、そのアドレスをWebhook設定に追加します。その後、キャプチャしたデータをメールで受信するようになります。
<?php

header('Access-Control-Allow-Origin: *');

$headers = "From: from@webhookservesite.com";​ 
/* change this sample email address to the valid email that you would like to receive letters from  */
​
 $message = print_r($_POST,true);
 @mail('to@mail.com', 'Tilda TEST', $message, $headers);
/* change this sample email address to the valid email that you would like to receive submissions to  */

echo"ok";

?>
製品データ転送
Webhookサービスの設定には、商品データをスクリプトに転送するための追加設定があります:商品データを配列の順序で転送し、他のシステムから externalid(外部コード)を転送する。
externalidチェックボックスは、製品データを配列として転送するオプションを選択した場合にのみ使用できます。これを選択すると、カタログ内の製品の外部IDが転送され、この製品が外部システムに接続されます。
PHPでより多くの情報を取得し、変数を取得する方法
すべてのフィールドと値を変更せずにデータを取得するには、$_POST変数にアクセスする必要があります。POSTは連想配列です:
Eメール=test%40email.com 
名前=テスト+名前 
電話番号=0123456789 
コメント=例+コメント 
セレクトボックス=赤 
チェックボックス=はい 
日付=2017年3月25日 
時間=17%3A59 
数量=124 
URL=ウェブサイト
特定のフィールドに関する情報を取得するには、$_POST["Date"]のように名前で配列要素にアクセスする必要があります。ここで、"Date "はフォームフィールドで指定された変数名です。

フィールドにコメントを追加したい場合は、この例を参考にしてください:
<?php

header('Access-Control-Allow-Origin: *');

$headers = "From: from@webhookservesite.ru";​

$message = "";

foreach($_POST as $key => $value) {
  if($key == "Date") {
    $message .= "Hotel check out date"; 
  } else { 
    $message .= $key; 
  }
  $message .= ": " . $value . "\n"; 
} 

$message = ​print_r($message, true);

@mail('to@mail.com', 'Tilda TEST', $message, $headers);

echo "ok";

?> 
フィールドの変数名を変更しない場合、フィールド名の最初の文字が大文字のフィールドに関連する情報が取得される。

特定のフィールドに別の変数名を設定した場合、そこから取得される情報は次のようになる:
customnamefield=黄色
フォーム・フィールドのデータに加えて、以下のデータも取得できる:
tranid=467251%3A8442970
フォームID=form48844953
ここで、"tranid "は "Leads "セクションのリードID(一意のリード番号)を指し、"formid "はブロックID(データ送信に使用されたブロックの一意番号)を指す。

フォーム・レスポンスが転送される前に、いくつかの文字が置き換えられる。例えば、"@"記号は"%40 "に、コロン記号(":")は"%3a "に置き換えられる。これらの文字をデコードするには、urldecode関数を使うことができる。(https://www.php.net/manual/en/function.urldecode.php)

フォーム・レスポンスの送信元アドレスを取得する方法

$_SERVER["HTTP_REFERER"]変数にアクセスして、ウェブフック経由でフォーム・レスポンスの送信元アドレスを取得することができます。

クッキーファイルを取得する方法(オプション)

クッキーファイルがあるときはいつでもフォームに COOKIES フィールドを含めるようにしたい場合などは、Webhook 設定で「クッキーを送信する」チェックボックスを選択します:
COOKIES=_ga%3DGA1.2.1861016115.1519204131%3B+_ym_uid%3D2021810468765220932 
ユーザーが一度もあなたのウェブサイトを訪れたことがない場合、フォームのレスポンスと一緒にクッキーファイルを受け取ることはありませんのでご注意ください。ユーザーがUTMタグのあるウェブページを訪問し、その後30日以内にウェブサイトに戻った場合、クッキーファイルにはUTMパラメータが含まれます:
COOKIES=TILDAUTM%3Dutm_source%253Dyandex%257C%257C%257Cutm_medium%253Dcpc%257C%257C%257Cutm_campaign%253Dpromo%257C%257C%257Cutm_content%253Dblocktext%257C%257C%257Cutm_term%253Dpoisk%257C%257C%257C 
注: 残念ながら、Tilda サポートチームは、カスタムコードに関するご質問にはお答えしておりません。
製造元
Tilda