پرش به محتویات

"Filter: bricks/form/save-submission/form_data"

فیلتر bricks/form/save-submission/form_data به شما این امکان را می‌دهد که داده‌های فرم Bricks ارسالی را قبل از ذخیره در پایگاه داده و نمایش آن در صفحه مدیریت فرم ارسالی، تغییر دهید. (ذخیره ارسال)

این زمانی مفید است که می‌خواهید:

  • فیلدهای ناخواسته را از ارسالی های ذخیره شده حذف کنید
  • مقادیر حساس را بپوشانید (مانند رمزهای عبور، نشانه‌ها، شناسه‌ها)
  • قبل از ذخیره‌سازی، مقادیر را عادی یا قالب بندی مجدد کنید

مثال:

در این مثال، فرم ارسالی باید سایر فیلدهای ثبت نام را ذخیره کند، اما فیلد رمز عبور قبل از ذخیره پوشانده می‌شود.

/**
 * $form_data is an array of Submission data to be saved.
 * $form_id The Bricks Form element ID.
 * $post_id The post/page ID where the form is located
 */
add_filter( 'bricks/form/save-submission/form_data', function( $form_data, $form_id, $post_id ) {
  if ( $form_id !== 'coudkb' ) {
    return $form_data;
  }

  // Array of all data going to be saved for this submission, the array key is the field ID
  // Example, mask the field ID 798ce3 before saving
  if ( isset( $form_data['798ce3']['value'] ) ) {
    $form_data['798ce3']['value'] = '******';
  }
  return $form_data;
}, 10, 3 );

نکته:

  • این فیلتر روی فقط ذخیره موارد ارسالی تأثیر می‌گذارد. آن چیزی که از طریق اقدامات ایمیل یا سایر ادغام ها ارسال می‌شود را تغییر نمی‌دهد، مگر اینکه آن ها نیز از داده‌های ارسال ذخیره شده استفاده کنند.
  • برای فیلدهای حساس، اگر به آن نیاز ندارید، ارسال ذخیره را به طور کامل غیرفعال کنید، یا با استفاده از این فیلتر، مقادیر را پنهان یا حذف کنید.