Plugin Directory

Changeset 3341706


Ignore:
Timestamp:
08/08/2025 02:40:50 PM (8 months ago)
Author:
superfrete
Message:

fix: price sorting in product page shipping calculator - now correctly orders from lowest to highest price

Location:
superfrete/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • superfrete/trunk/app/Controllers/ProductShipping.php

    r3341621 r3341706  
    340340                    $step_start = microtime(true);
    341341                   
    342                     // Format shipping methods
     342                    // Sort rates by price (lowest to highest) before formatting
     343                    uasort($rates, function($a, $b) {
     344                        $cost_a = floatval($a->cost);
     345                        $cost_b = floatval($b->cost);
     346                       
     347                        // Free shipping (cost = 0) should come first
     348                        if ($cost_a == 0 && $cost_b > 0) return -1;
     349                        if ($cost_b == 0 && $cost_a > 0) return 1;
     350                       
     351                        // Both free or both paid - sort by cost ascending (lowest first)
     352                        if ($cost_a == $cost_b) {
     353                            // If costs are equal, sort by delivery time (faster first)
     354                            $time_a = isset($a->meta_data['delivery_time']) ? intval($a->meta_data['delivery_time']) : 999;
     355                            $time_b = isset($b->meta_data['delivery_time']) ? intval($b->meta_data['delivery_time']) : 999;
     356                            return $time_a <=> $time_b;
     357                        }
     358                       
     359                        return $cost_a <=> $cost_b;
     360                    });
     361                   
     362                    // Format shipping methods (now sorted by price)
    343363                    $shipping_methods = [];
    344364                    foreach ($rates as $rate_id => $rate) {
  • superfrete/trunk/readme.txt

    r3341701 r3341706  
    11=== SuperFrete ===
    2 Contributors: Zafarie, SuperFrete
     2Contributors: SuperFrete
    33Tags: WooCommerce, Shipping, Frete, Logística
    44Requires at least: 5.6
     
    6868
    6969== Suporte ==
    70 Caso tenha dúvidas ou precise de suporte, entre em contato através do e-mail [seu-email] ou acesse o repositório do plugin no GitHub.
     70Caso tenha dúvidas ou precise de suporte, entre em contato através do e-mail integracao@superfrete.com
    7171
    7272== Changelog ==
     73
    7374= 3.1.0 =
    74 * 🎨 **Personalização Visual Avançada:** Nova interface completa para personalizar cores e aparência da calculadora de frete
    75 * 🔧 **Presets de Tema:** Adicionados presets para tema claro, escuro e auto-detecção baseada no site
    76 * 👁️ **Pré-visualização em Tempo Real:** Visualize as alterações instantaneamente enquanto personaliza as cores
    77 * 🎯 **UX Melhorada:** Calculadora de frete simplificada com input sempre visível e cálculo automático ao digitar CEP
    78 * ⚡ **Performance:** Removidas notificações desnecessárias e otimizado fluxo de cálculo
    79 * 🎛️ **Controles Intuitivos:** Interface reorganizada com cores, tipografia e espaçamentos personalizáveis
    80 * 🌈 **Compatibilidade de Tema:** Suporte aprimorado para temas claros e escuros com cores adaptáveis
    81 * 🔄 **Reset Inteligente:** Botão para restaurar rapidamente as configurações padrão do SuperFrete
     75
     76* Personalização Visual Avançada:** Nova interface completa para personalizar cores e aparência da calculadora de frete
     77* **Presets de Tema:** Adicionados presets para tema claro, escuro e auto-detecção baseada no site
     78* **Pré-visualização em Tempo Real:** Visualize as alterações instantaneamente enquanto personaliza as cores
     79* **UX Melhorada:** Calculadora de frete simplificada com input sempre visível e cálculo automático ao digitar CEP
     80* **Performance:** Removidas notificações desnecessárias e otimizado fluxo de cálculo
     81* **Controles Intuitivos:** Interface reorganizada com cores, tipografia e espaçamentos personalizáveis
     82* **Compatibilidade de Tema:** Suporte aprimorado para temas claros e escuros com cores adaptáveis
     83* **Reset Inteligente:** Botão para restaurar rapidamente as configurações padrão do SuperFrete
    8284
    8385= 2.0 =
Note: See TracChangeset for help on using the changeset viewer.