如何以编程方式提交联系表 7

How to submit contact form 7 programmatically

我想通过自定义功能提交联系表 下面的代码正在获取表单实例,但是在提交时。它提交表单而不是我想要的字段。

$item = wpcf7_contact_form( $formId );
$result = $item->submit();

在这里我可以传递我在管理面板中定义的字段,例如 "textarea-123" & "email-234"

你可以添加一段JS代码,比如:

$("form.wpcf7").submit()

我没有得到我所看到的确切答案,但我找到了替代解决方案。

function cf7Submit($formId , $args) {
    $url = 'http://example.com/wp-json/contact-form-7/v1/contact-forms/'.$formId.'/feedback';
    $response = wp_remote_post( $url, array(
        'method'      => 'POST',
        'body'        => $args
        )
    );

    if ( is_wp_error( $response ) ) {
        $error_message = $response->get_error_message();
        echo "Something went wrong: $error_message";
    } else {
        echo 'Response:<pre>';
        print_r( $response );
        echo '</pre>';
    }
}

我可以这样调用这个函数:

cf7Submit(128, array(
'textarea-123' => 'test email',
'email-234' => 'asd@asd.com'));