見積もり募集の結果
見積もり募集の内容
- 依頼主の業種
- コンサルティング・シンクタンク
-
提示した予算
-
1 円 ~ 5,000 円
-
依頼概要
-
WordPressのcontact form7とPardot(Account Engagement)の接続のPHPコードが知りたい
・悩んでいる点:別サイトでform idが数字の時は問題無く連携できたのですが、9d2c035などの文字列のため上手くいきません。
費用は要相談です。
以下にコードの一部を載せます。
// Contact Form 7のフォーム送信後のアクションフックを利用する
add_action('wpcf7_mail_sent', 'send_to_pardot_9d2c035');
function send_to_pardot_9d2c035($contact_form) {
$submission = WPCF7_Submission::get_instance();
if ($submission) {
// 送信されたフォームのIDを取得
$form_id = $contact_form->id();
$form_check = '9d2c035';
// 9d2c035番のフォームが送信されたことを確認
if ($form_id === $form_check) {
$posted_data = $submission->get_posted_data();
// フォームから必要なデータを取得
$company_name = $posted_data['company-name'] ?? '';
$department_name = $posted_data['department-name'] ?? '';
$your_myoji = $posted_data['your-myoji'] ?? '';
$your_namae = $posted_data['your-namae'] ?? '';
$your_tel = $posted_data['your-tel'] ?? '';
$your_email = $posted_data['your-email'] ?? '';
$your_message = $posted_data['your-message'] ?? '';
$utm_source = $posted_data['utm_source'] ?? '';
$utm_medium = $posted_data['utm_medium'] ?? '';
$utm_campaign = $posted_data['utm_campaign'] ?? '';
$url = 'https://略'; // PardotエンドポイントURL
$param = array(
'company-name' => $company_name,
'department-name' => $department_name,
'your-myoji' => $your_myoji,
'your-namae' => $your_namae,
'your-tel' => $your_tel,
'your-email' => $your_email,
'your-message' => $your_message,
'utm-source' => $utm_source,
'utm-campaign' => $utm_campaign,
'utm-medium' => $utm_medium,
);
// Pardotにデータを送信
pardot_post_request($url, $param);
}
}
}
-
// 9d2c035番のフォームが送信されたことを確認
if ($form_id === $form_check) {
$posted_data = $submission->get_posted_data();
ここが間違っていると思われ、下記のコードにするとどのform idに関わらず拾って送信してしまいます。
// 9d2c035番のフォームが送信されたことを確認
if (strpos( $form_id, $form_check ) === false ) {
$posted_data = $submission->get_posted_data();
-
form idではなく、formが埋め込まれている投稿IDやURLで判断でも問題ありません。
-
一旦は代替のフォームでしのぐことになったためキャンセルさせていただきます。問題自体は解決していないため、また別途依頼を立てさせていただきます。