我有一个表格,有三个简单的字段:名称,电子邮件和公司。我试图将所有字段值都放入vars中,但似乎无法理解如何迭代它们。我从这里得到我的文档:https://developers.elementor.com/forms-api
add_action( 'elementor_pro/forms/validation', function ( $record, $ajax_handler ) {
$raw_fields = $record->get( 'fields' );
$fields = [];
foreach ( $raw_fields as $field => $value) {
$name = $value['name'];
$email = $value['email'];
$company = $value['company'];
//do something else with the vars
}}, 10, 2 );发布于 2020-05-27 23:55:20
你可能想这样做:
$raw_fields = $record->get( 'fields' );
$fields = [];
foreach ( $raw_fields as $id => $field ) {
$fields[ $id ] = $field['value']; //this is how you'd want to iterate all available fields
} $id是您在表单小部件上设置的字段的id。假设您将name字段的id设置为name,则可以获得类似于以下$fields['name']的值。
此外,在获取所有字段之前,您可能需要检查是否在正确的表单上。你可以试试:
$form_id = $record->get_form_settings( 'form_id' );
if ( $form_id !== 'your_form_id' ) { //change this to your form id
return;
}https://stackoverflow.com/questions/60675733
复制相似问题