Formulardaten als CPT speichern, aber nur wenn Formular Id = x
-
Hallo Leute,
ich habe aktuell ein Formular mit einem benutzerdefinierten Beitragstyp. Dieser enthält einige metafelder, die ich via CF7 Function auf die jeweiligen Input-Felder mappe. Der Code sieht so aus:
function save_posted_data( $posted_data ) { $form_id = $contact_form->id(); if( $form_id == 1903 ) { $args = array( 'post_type' => 'np-food', 'post_status'=>'draft', 'post_title'=>$posted_data['food-name'], 'post_content'=>$posted_data['food-desc'], ); $post_id = wp_insert_post($args); if(!is_wp_error($post_id)){ if( isset($posted_data['food-name']) ){ update_post_meta($post_id, 'food-name', $posted_data['food-name']); } // and so on } } return $posted_data; } add_filter( 'wpcf7_posted_data', 'save_posted_data' );
Das Ganze funktioniert auch, nur leider offenbar nicht die ID-Prüfung. Bzw, doch, es wird nur ein CPT erstellt, wenn dieses Formular verwendet wird, nur alle anderen Formulare enden beim „Absenden“ in einer Endlosschleife.
Hat jemand eine Idee?
Beste Grüße
Buddy
- Das Thema „Formulardaten als CPT speichern, aber nur wenn Formular Id = x“ ist für neue Antworten geschlossen.