0

フォームを動的にするために、php から CF7 フィールドを生成する必要があります。

<div>[text* your-name]</div>そのため、ワードプレスで直接書くなどの代わりに、代わりにそれを行うテンプレートファイルがあります。問題は、そうすると検証が機能しないことです。フィールドは正しく表示されますが、送信時にフィールドがチェックされません。ただし、送信する場合、データは正しく保存されます。

WP ADMIN フォームタブ:

[my_cf_template]

template.php

<?php echo do_shortcode(apply_filters("the_content", '[contact-form-7 id="115" title="Ruumide rent - booking"]')); ?>

関数.php

function cf_template_func(){

    $email = wpcf7_do_shortcode('[email* your-email]');
    $submit = wpcf7_do_shortcode( '[submit "Send"]' );

    $str = <<<HTML


    <div class="detailed-info">

        <label> Your E-mail*
        $email </label>

    </div>  
    $submit     
    HTML;
    return $str;
}

add_action( 'wpcf7_init', 'custom_add_shortcode');

function custom_add_shortcode() {
    wpcf7_add_shortcode( 'my_cf_template', 'cf_template_func');
}
4

0 に答える 0