FOX - Currency Switcher for WooCommerce

Utilisation de l'API REST avec le WooCommerce Currency Switcher

À partir de la version 2.2.9/1.2.9 du plugin, la possibilité d'utiliser une requête REST intégrée pour obtenir les données des devises du site est apparue : wp-json/woocs/v3/currency WOOCS permet également d'utiliser son API pour créer des requêtes REST personnalisées, comme l'exemple ci-dessous qui vous permet d'obtenir tous les prix des produits de la boutique dans toutes ses devises (wp-json/woocs/v3/products/gbp) : (ajoutez le code suivant dans le fichier functions.php du thème WordPress actuel)
add_action('rest_api_init', function () {
    //Example: wp-json/woocs/v3/products/eur/
    register_rest_route('woocs/v3', '/products/(?P<currency>.+)', array(
        'methods' => 'GET',
        'callback' => function($request) {
            global $WOOCS;
            $currency = strtoupper(sanitize_key($request['currency']));
            $products_ids = wc_get_products([
                'return' => 'ids',
            ]);

            //***
            $res = [];
            if (!empty($products_ids)) {
                $_REQUEST['woocs_raw_woocommerce_price_currency'] = $currency;//MUST BE!!
                foreach ($products_ids as $product_id) {
                    $product = wc_get_product($product_id);

                    if ($WOOCS->default_currency === $currency) {
                        $res[$product_id] = $product->get_price();
                    } else {
                        $res[$product_id] = $WOOCS->raw_woocommerce_price($product->get_price(), $product);
                    }
                }
            }


            return $res;
        },
        'permission_callback' => '__return_true'
    ));
});