説明

について wpforms_post_submissions_process_meta フィルタはカスタムフィールドに保存される値 (update_post_meta() に渡される値) に対して実行されます。

パラメータ

フィールドの値
(文字列) フォームのフィールド値。
メタ・キー
(文字列) カスタムフィールドのメタキー。
フィールドID
(int) フィールドID。
フィールド
(配列) サニタイズされたエントリーフィールドの値/プロパティ。
フォームデータ
(配列) 処理済みのフォーム設定/データ。

ソース

wpforms-post-submissions/class-post-submissions.php

詳細情報

このフィルタは、投稿投稿アドオンから保存されたフィールドの値を変更するために使用できます。

以下は、post_metaの保存にUNIXタイムスタンプを使うように変更する、このフィルタを使ったスニペットの例です。

/**
 * Customize post_meta value during WPForms Post Submissions processing.
 *
 * @link   https://wpforms.com/developers/wpforms_post_submissions_process_meta/
 *
 * @param  string  $field_value  Field value from the form.
 * @param  string  $meta_key     Custom field meta key.
 * @param  int     $field_id     Field ID.
 * @param  array   $fields       Sanitized entry field values/properties.
 * @param  array   $form_data    Processed form settings/data, prepared to be used later.
 *
 * @return string
 */

function wpf_post_submission_process_meta( $field_value, $meta_key, $field_id, $fields, $form_data ) {

	// Only run on my form with ID = 443
        if ( absint( $form_data[ 'id' ] ) !== 443 ) {
                return;
        } 
	
	// If the field has a specific meta key and contains a unix time stamp,
	// use that for the post_meta value.
	if ( $meta_key === 'some_post_meta_key' && ! empty( $fields[ $field_id ][ 'unix' ] ) ) {
		$field_value = $fields[ $field_id ][ 'unix' ];
	}

	return $field_value;
}
add_filter( 'wpforms_post_submissions_process_meta', 'wpf_post_submission_process_meta', 10, 5 );

上記のコードでは、フォームIDと同様に、使用しているメタ・キーと一致するようにメタ・キーを置き換えることを忘れないでください。 443.フォームIDを探すのに助けが必要な場合、 こちらのドキュメントをご覧ください。.

記事の参照投稿でチェックボックスの値を配列として格納する方法