この記事は更新から2年以上経過しています。情報が古い可能性がありますのでご注意下さい。
SalesforceのWeb-to-Lead(リード)を利用する時、Salesforce内で生成できるHTMLのフォームを利用するのが最も手軽なのですが、私の場合はWordPressのContact Form 7でのメール送信時に、メール送信イベントの処理にフックする形でサーバーサイドからcURLでPOSTしたいと考えました。
調べると、丁度良い文献を発見
Wordpress + Contact Form 7 で Salesforce の Web-to-リード を送信する - Qiita
Salesforce の Web-to-リードを使用すると、問い合わせフォームから見込み顧客の情報を直接Salesforceに取り込むことができます。しかし、Salesforceで生成されたHTM…
しかし、curl_exec関数の戻り値はfalseであり、Salesforce側でもPOSTされたリードのデータは有りませんでした。
cURLのエラー情報の取得を試みてみるも、それ自体もfalseとしか得られず、試行錯誤した結果、原因解消としては下記のSSL検証を無効にする記述が必要ということが分かりました。
$ch = curl_init();
curl_setopt( $ch,CURLOPT_SSL_VERIFYPEER, false );
“CURLOPT_SSL_VERIFYHOST も合わせて設定せよ”という文献もありましたが、これについては特に記述しなくても問題なかったです。(そもそも検証有効時にしか影響無さそう)