KI-Zusammenfassung
Beschreibung
Der wpforms_post_submissions_post_args Filter wird verwendet, um alle Argumente der Einreichung wie Titel, Beitragstyp usw. zu füllen, wenn das Post Submissions Addon von WPForms verwendet wird.
Parameter
- $post_args
- (array) (Erforderlich) Argumente aus der Beitragsübergabe wie Kategorie-ID, Tag-ID, Autor-ID usw.
- $form_data
- array Formulareinstellungen/Daten.
- $fields
- array Bereinigte Feldwerte/Eigenschaften des Eintrags.
Quelle
wpforms-post-submissions/class-post-submissions.php
Weitere Informationen
Der wpforms_post_submissions_post_args wird sofort ausgelöst, wenn die Einreichung verarbeitet wird, um den Beitragstitel, die Kategorie usw. im Beitrag festzulegen.
Beispiele
Im Beispielcode sehen Sie, dass wir zuerst die Formular-ID überprüfen, um sicherzustellen, dass sie mit dem Formular übereinstimmt, das angesprochen wird. Dann überprüfen wir ein bestimmtes Feld (anhand der Feld-ID), um zu sehen, ob es leer ist.
Denken Sie daran, die Formular-ID von 1378 zu ändern, um Ihre Formular-ID anzupassen, und die '10' zu ändern, um Ihre Feld-ID anzupassen.
Wenn Sie Hilfe benötigen, wo Sie Ihre Formular- und Feld-IDs finden, lesen Sie bitte dieses Tutorial.
Wir werden prüfen, ob die Dropdown-Liste mit FAQ übereinstimmt, und wenn ja, wird sie vom Beitragstyp post in my_faq geändert.
/**
* Action that fires during form submission.
*
* @link https://wpforms.com/developers/wpforms_post_submissions_post_args/
*
* @param array $post_args Sanitized entry field. values/properties.
* @param array $form_data Form data and settings.
* @param array $fields Sanitized entry field values/properties.
*
* @return array
*/
function wpf_dev_post_submissions_post_args( $post_args, $form_data, $fields ) {
// Only run this snippet on the form ID 1378
if ( absint( $form_data[ 'id' ] ) !== 1378 ) {
return $fields;
}
// If the field ID is 10 and the value of that field is equal to FAQ process the snippet
if ( ! empty( $fields[ '10' ] ) && $fields[ '10' ][ 'value' ] === 'FAQ' ) {
$post_args[ 'post_type' ] = 'my_faq';
}
return $post_args;
}
add_filter( 'wpforms_post_submissions_post_args', 'wpf_dev_post_submissions_post_args', 10, 3 );