Automattic\WooCommerce\Admin\Features\Blueprint\Exporters

ExportWCSettingsShipping::get_steps_for_methods_and_optionsprivateWC 1.0

Retrieve shipping methods and options.

Method of the class: ExportWCSettingsShipping{}

No Hooks.

Returns

Array. Steps for shipping methods and options.

Usage

// private - for code of main (parent) class only
$result = $this->get_steps_for_methods_and_options(): array;

ExportWCSettingsShipping::get_steps_for_methods_and_options() code WC 9.9.5

private function get_steps_for_methods_and_options(): array {
	global $wpdb;

	$methods        = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}woocommerce_shipping_zone_methods", ARRAY_A );
	$method_options = $wpdb->get_results(
		"SELECT * FROM {$wpdb->prefix}options WHERE option_name LIKE 'woocommerce_flat_rate_%_settings'
            OR option_name LIKE 'woocommerce_free_shipping_%_settings'",
		ARRAY_A
	);

	return array_merge(
		array_map(
			fn( $method ) => new RunSql( Util::array_to_insert_sql( $method, $wpdb->prefix . 'woocommerce_shipping_zone_methods', 'replace into' ) ),
			$methods
		),
		array_map(
			fn( $option ) => new RunSql( Util::array_to_insert_sql( $option, $wpdb->prefix . 'options', 'replace into' ) ),
			$method_options
		)
	);
}