【问题标题】:How to update total payable amount on checkout page woocommerce如何在结帐页面woocommerce上更新总应付金额
【发布时间】:2017-04-24 20:03:42
【问题描述】:

我想对特定用户角色而不是所有用户收取运费。我尝试使用基于 woocommerce 角色的运输插件,但它给我的主题带来了问题。所以,我决定使用 woocommerce 钩子来做到这一点。具有批发角色的用户无需支付运费。

这是我的代码

$excluded_role = "wholesale";
$user = wp_get_current_user();
if ( empty( $user ) ) return false;

if( in_array( $excluded_role, (array) $user->roles ))
{
    global $woocommerce;
    //echo $woocommerce->cart->get_cart_total();
    ?>
    <script type="text/javascript">
        jQuery(document).ready(function()
        {
            jQuery(".woocommerce-Price-amount.amount").html('<span class="woocommerce-Price-currencySymbol"><?php echo get_woocommerce_currency_symbol();?></span><?php echo $woocommerce->cart->get_cart_total();?>');
        });
    </script>
    <?php
    //return $woocommerce->cart->get_cart_total();
}

现在的问题是,当我单击下订单按钮时​​,此代码没有更新金额,并且我没有找到更新应付总额的 php 方法。

谁能建议我如何更新结帐页面上的总应付金额。

提前致谢。

【问题讨论】:

    标签: php wordpress woocommerce checkout


    【解决方案1】:

    我在主题的 function.php 文件中添加了这段代码。

    function disable_shipping_calc_on_cart( $show_shipping ) {
    $excluded_role = "wholesale";
    $user = wp_get_current_user();
    if ( empty( $user ) ) return false;
    
    if( in_array( $excluded_role, (array) $user->roles ))
    {
         return false;
    }
    return $show_shipping;
    }
    add_filter( 'woocommerce_cart_ready_to_calc_shipping', 'disable_shipping_calc_on_cart', 99 );
    

    我工作.. :)

    【讨论】:

      猜你喜欢
      • 2015-11-29
      • 2023-03-30
      • 2021-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-26
      • 2018-09-03
      相关资源
      最近更新 更多