当前位置: 首页 > 知识库问答 >
问题:

将客户输入的小费添加到WooCommerce结帐页面

谷梁永年
2023-03-14
add_action( 'woocommerce_cart_calculate_fees', 'calculateTipsPercentage', 10, 1 );
function calculateTipsPercentage( $cart ) {

    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
        return;

    $total_tax = 0;
    $carttotal= 0;
    // Get the unformated taxes array
    $taxes = $cart->get_taxes(); 

    //get Tax amount from taxes array
    foreach($taxes as $tax) $total_tax += $tax;



   global $woocommerce;


   $percentage = 0.10;//percentage of tips (must be entered by customer)
   $carttotalamount = ( $woocommerce->cart->cart_contents_total + $woocommerce->cart->shipping_total );  //Cart total without tax
   $totalorderwithTax = ( $carttotalamount +  $total_tax); //cart total with tax 
   $extrafee= round( $totalorderwithTax  * $percentage, 2 ); //extra fee amount 

   $percetagetoShow = ( $percentage * 100 );  

    $woocommerce->cart->add_fee( "Tip ({$percetagetoShow}%)", $extrafee, true, '' );




}

我如何添加任何类型的输入字段与一个按钮(添加提示结帐),让客户添加百分比,并单击此按钮,这将激发上面找到的行动。或者,如果我可以在没有按钮的情况下通过Ajax/jQuery进行操作(不刷新页面),那会更好。

如有任何帮助,不胜感激。

共有1个答案

章翔宇
2023-03-14

Woocommerce有各种钩子,您可以使用这些钩子将您的自定义字段添加到结帐页面,例如*

woocommerce_review_order_before_shipping woocommerce_review_order_after_shipping woocommerce_review_order_before_order_total

或者你可以在这里参观

 类似资料:
  • 我想使用贝宝来允许我的客户用信用卡或借记卡付款,我已经允许用贝宝付款,我知道在登录贝宝表单的按钮下,它的一个按钮上写着“用信用卡或借记卡付款”,但我想让用户直接从脚本到贝宝客人结账。 我使用PayPal SDK,这是我的代码: 我需要这个地方 而不是这个

  • 在Woocommerce结帐页面中,我正在尝试在结帐页面上添加一个复选框 我参考了这些文章 WooCommerce自定义结账字段添加费用订购ajax 用于在WooCommerce中添加/删除自定义费用的复选框字段 添加一个结帐复选框字段,在WooCommerce中启用百分比费用 它不能像我希望的那样工作。我做错了什么? 任何帮助都很感激。

  • 我正在使用WooCommerce插件的Divi主题。在商店页面,我想有数量调整直接添加到购物车按钮。 我的网站 目前,你必须点击产品进入单一产品页面,然后才有可能添加到购物车。 我试图找出是什么产生了产品列表,以便我可以修改它,但正如你可能猜到的那样,我对这个非常陌生。 如何将该功能添加到商店页面产品?

  • WooCommerce的Fees API允许我们向购物车和结算页面添加附加费(surcharge),可以根据不同国家,用户购买的产品数量、产品总价等等来设定费用。今天介绍以下WooCommerce添加附加费的方法。 WooCommerce添加附加费代码 add_action( 'woocommerce_cart_calculate_fees','sola_wc_custom_surcharge'

  • 嘿,伙计们,这是我第一次使用MPandroidChart,我目前正在试用它,以充分了解如何使用它及其功能。目前,我正在尝试使用用户输入的数据(通过片段)更新我的折线图。我已经看到了一些关于堆栈溢出的类似问题,但它们似乎都不适合我。 任何帮助都将不胜感激。提前感谢。 注意:有一些重复的代码,因为我正在试验并试图找出不同的方法来寻找解决方案。 获取用户输入的MainFragment MPandroid

  • 我经营一家Woocommerce商店,该商店也提供免费产品(_常规价格=0)。客户必须选择数量并将其添加到购物车中,然后下订单才能收到产品。但这并不是Woocommerce的工作原理,它隐藏了所有价格为0的产品的“添加到购物车”链接。并且不会在购物车页面中显示它们。有没有解决这个问题的办法?非常感谢。