ContactForm7のフォームに特定の値を入れ込む

2024.10.25 09:00
2024.10.25 09:53
ContactForm7のフォームに特定の値を入れ込む

ContactForm7のフォーム部分に特定の値を組み込みたくなったので、挑戦してみました。

まずはショートコードを変更します。
「your-vars」という変数に「hogehoge」という値を入れてみます。

    <div class="i-form__box">
      <?php echo do_shortcode('[contact-form-7 id="017073d" title="お問い合わせ" html_id="ContactForm" your-vars="hogehoge"]'); ?>
    </div>

次にfunctions.phpにコードを追記します。
your-varsと言う値をフォーム側で拾えるようにするためです。

add_filter( 'shortcode_atts_wpcf7', 'custom_shortcode_atts_wpcf7_filter', 10, 3 );
  function custom_shortcode_atts_wpcf7_filter( $out, $pairs, $atts ) {
  $my_attr = 'your-vars';
  if ( isset( $atts[$my_attr] ) ) {
    $out[$my_attr] = $atts[$my_attr];
  }
  return $out;
}

最後にフォーム側に「your-vars」と「default:shortcode_attr」を追記して完了です!

[text* your-vars default:shortcode_attr]

簡単にできることかと思いましたが意外と手間がかかりました。

今回は以上です!