If there is an error thrown, will continue to save and validate fields, but will leave the erroring field out.
public process_admin_options ( ) : boolean | ||
Résultat | boolean | was anything saved? |
/** * Process and redirect if disabled. */ public function process_admin_options() { parent::process_admin_options(); if ('no' === $this->settings['enabled']) { wp_redirect(admin_url('admin.php?page=wc-settings&tab=shipping§ion=options')); exit; } }
public function process_admin_options() { $success = parent::process_admin_options(); if (isset($_POST['wc_autoship_price_shipping_rates']) && is_array($_POST['wc_autoship_price_shipping_rates'])) { $rates = array(); foreach ($_POST['wc_autoship_price_shipping_rates'] as $rate) { if ($rate['min_subtotal'] !== '' && $rate['cost'] !== '') { $rate['min_subtotal'] = floatval($rate['min_subtotal']); $rate['cost'] = floatval($rate['cost']); $rates[] = $rate; } } usort($rates, 'wc_autoship_price_shipping_compare_min_subtotal'); update_option('wc_autoship_price_shipping_rates', $rates); } else { update_option('wc_autoship_price_shipping_rates', array()); } return $success; }
public function process_admin_options() { $result = parent::process_admin_options(); $this->init(); $clone = WBS_Profile_Manager::instance()->profile($this->profile_id); if (isset($clone) && $clone !== $this) { $clone->init(); } if ($result) { $this->purge_woocommerce_shipping_cache(); } return $result; }
/** * Process and save options. * * Processes, validates and sanitizes options on the shipping page. * * @since 1.0.8 */ public function process_admin_options() { parent::process_admin_options(); if (isset($_POST['method_priority'])) { foreach ($_POST['method_priority'] as $rate_id => $priority) { update_post_meta(absint($rate_id), '_priority', absint($priority)); } } }
/** * Process admin options. */ public function process_admin_options() { parent::process_admin_options(); wc_table_rate_admin_shipping_rows_process($this->instance_id); }
public function process_admin_options() { parent::process_admin_options(); // Process services table $services_field = $this->get_field_key('services2'); $services_custom_prices_field = $services_field . '_custom_prices'; $custom_prices = []; if (isset($_POST[$services_field])) { $checked_services = $_POST[$services_field]; foreach ($checked_services as $key => $service) { if (isset($_POST[$services_custom_prices_field][$service])) { $custom_prices[$service] = $_POST[$services_custom_prices_field][$service]; } } } update_option($services_custom_prices_field, $custom_prices); }
/** * we need to reinitialize the settings field data. * * @return bool */ public function process_admin_options() { $success = parent::process_admin_options(); $this->init_instance_settings(); return $success; }