Woocommerce 如何在商业中获得最低的固定费率运输成本

Woocommerce 如何在商业中获得最低的固定费率运输成本,woocommerce,shipping-method,Woocommerce,Shipping Method,我想要的很简单:我想在WooCommerce的产品页面上显示最低的固定费率运输成本,这样我就可以显示:“我们已经从……发送订单了。” 客户国家的哪个装运区处于活动状态并不重要。。。我只需要整体(静态)最低的固定费率成本可用 到目前为止,我有: foreach ((array) $delivery_zones as $key => $delivery_zone ) { $shipping_costs = []; foreach ($delivery_zone['shipp

我想要的很简单:我想在WooCommerce的产品页面上显示最低的固定费率运输成本,这样我就可以显示:“我们已经从……发送订单了。”

客户国家的哪个装运区处于活动状态并不重要。。。我只需要整体(静态)最低的固定费率成本可用

到目前为止,我有:

foreach ((array) $delivery_zones as $key => $delivery_zone ) {

    $shipping_costs = [];

    foreach ($delivery_zone['shipping_methods'] as $value) {
        $shipping_costs[] = $value->cost;
        break;
    }

    echo (min($shipping_costs));
}                           
但这仍然输出所有固定费率成本f.i.:1,993,995,99

如何仅显示最低(在本例中为1,99)速率


很多tnx

我认为这是一个简单的错误,请尝试一下:

function get_lowest_shipping_flat_rate_1()
{
    $delivery_zones = WC_Shipping_Zones::get_zones(); 

    //define the array outside of the loop
    $shipping_costs = [];
    $min_zone = "";

    //get all costs in a loop and store them in the array
    foreach ((array) $delivery_zones as $key => $the_zone ) {

    foreach ($the_zone['shipping_methods'] as $value) {
        $shipping_costs[] = $value->cost;
        if(min($shipping_costs) == $value->cost) $min_zone = $the_zone['zone_name'];
        }
    }

    $content = $min_zone . " - " . get_woocommerce_currency_symbol() . " " . min($shipping_costs);

    return $content;
}

你能告诉我们你用哪个钩子编辑产品页面,或者给我们提供屏幕截图,显示产品页面上的当前价格吗?我不使用钩子。我刚刚创建了一个小插件来显示各种订单信息(如成本、交货日期等),并显示在产品页面上。这回答了你的问题?我希望您有awnjser:)这确实只输出1个值,但不是最低值。当我把1,99的单位价格改为11,99时,它显示的是11,99,而不是新的最低价格3,99。看起来它总是只显示第一个字符串。。。这有意义吗?嗯,我只是通过创建一个新的更便宜的固定费率并更改最低固定费率(我指的是两个不同的测试)再次测试了代码,它对我来说运行良好..我明白了。。。那么,这可能与我使用的不同运输区有关。您的代码可能在单个区域内运行良好。谢谢你的工作,我的朋友:)糟糕的是,我不能用它。我必须更深入地寻找。我想这对你也一定有用,无论如何我希望你能找到更好的解决办法。祝您愉快。我刚刚尝试了您编辑的代码(没有中断),但该代码没有输出任何内容,因此我再次尝试了您的第一个代码(希望它能工作),但再次失败。无论我改变运输价格,输出价格总是完全相同的运输费率。是否可以按运费名称而不是运费成本来订购输出?