説明
について 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を探すのに助けが必要な場合、 こちらのドキュメントをご覧ください。.