tCategory; woocommerce_wp_select( [ 'id' => 'voucher[' . $variation->ID . ']', 'label' => __('Mollie Voucher category', 'mollie-payments-for-woocommerce'), 'value' => get_post_meta($variation->ID, 'voucher', true), 'options' => [ $defaultCategory => __('Same as default category', 'mollie-payments-for-woocommerce'), Voucher::NO_CATEGORY => __('No Category', 'mollie-payments-for-woocommerce'), Voucher::MEAL => __('Meal', 'mollie-payments-for-woocommerce'), Voucher::ECO => __('Eco', 'mollie-payments-for-woocommerce'), Voucher::GIFT => __('Gift', 'mollie-payments-for-woocommerce'), ], ] ); } /** * Save the voucher option in the variation product * @param $variation_id * @param $i */ public function saveVoucherFieldVariations($variation_id, $i) { $optionName = 'voucher'; //phpcs:ignore WordPress.Security.NonceVerification.Missing $voucherCategory = isset($_POST[$optionName]) && isset($_POST[$optionName][$variation_id]) //phpcs:ignore WordPress.Security.NonceVerification.Missing ? sanitize_text_field(wp_unslash($_POST[$optionName][$variation_id])) : false; if ($voucherCategory) { update_post_meta($variation_id, $optionName, esc_attr($voucherCategory)); } } public function addVoucherVariationData($variations) { $optionName = 'voucher'; $variations[$optionName] = get_post_meta($variations[ 'variation_id' ], $optionName, true); return $variations; } }