Я позаимствовал этот код из stackoverflow в попытке найти решение.Мне нужно создать новый пост из представленных данных в форме.Я использовал фильтр:
add_filter( 'wpcf7_posted_data', 'save_new_booked_event_data' );
, но обнаружил, что он срабатывает после каждой отправки, а не ПОСЛЕ проверки.Поэтому я перешел к следующему коду:
add_action('wpcf7_before_send_mail','contactform7_before_send_mail',1);function
contactform7_before_send_mail( $contact_form ) {
if ( !isset($contact_form->posted_data) && class_exists('WPCF7_Submission') ) {
$submission = WPCF7_Submission::get_instance();
if ( $submission ) {
$formData = $submission->get_posted_data();
$formField = $formData['_wpcf7'];
update_post_meta(199, 'first_name', $formField);
}
} else {
// We can't retrieve the form data
return $contact_form;
}
return $contact_form;
}
Пять часов спустя: метод get_posted_data всегда имеет значение NULL.Я пытался подойти к нему с разных сторон, включая отключение AJAX и размещение формы.Я проверил и выгрузил каждый объект, чтобы убедиться, что он работает, но всегда имеет значение NULL.Что мне здесь не хватает?Пожалуйста, кто-нибудь?
Спасибо!