WC_Admin_Addons::handle_legacy_marketplace_redirects()public staticWC 1.0

Process requests to legacy marketplace menu and redirect to correct in-app pages.

Method of the class: WC_Admin_Addons{}

No Hooks.

Return

null. Nothing (null).

Usage

$result = WC_Admin_Addons::handle_legacy_marketplace_redirects();

WC_Admin_Addons::handle_legacy_marketplace_redirects() code WC 9.7.1

public static function handle_legacy_marketplace_redirects() {
	$section = isset( $_GET['section'] ) ? sanitize_text_field( wp_unslash( $_GET['section'] ) ) : '_featured';
	$search  = isset( $_GET['search'] ) ? sanitize_text_field( wp_unslash( $_GET['search'] ) ) : '';

	if ( 'helper' === $section ) {
		$url = admin_url( 'admin.php?page=wc-admin&tab=my-subscriptions&path=%2Fextensions' );

		if ( isset( $_GET['connect'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
			$url .= '&connect';
		}

		wp_safe_redirect( $url );
		exit();
	}

	if ( 'search' === $section || ! empty( $search ) ) {
		wp_safe_redirect( admin_url( 'admin.php?page=wc-admin&term=' . $search . '&tab=search&path=%2Fextensions' ) );
		exit();
	}

	$sections         = self::get_sections();
	$allowed_sections = array_map( fn( $section_object ) => $section_object->slug, $sections );
	// Validate if the category is supported.
	$section = in_array( $section, $allowed_sections, true ) ? $section : '_featured';

	if ( '_featured' === $section ) {
		wp_safe_redirect( admin_url( 'admin.php?page=wc-admin&path=%2Fextensions' ) );
		exit();
	}

	wp_safe_redirect( admin_url( 'admin.php?page=wc-admin&tab=extensions&path=%2Fextensions&category=' . $section ) );
	exit();
}