php - 在结帐过程中或购物车上动态更新费用“名称”
问题描述
如果您能帮我解决这个问题,那就太好了。我在结帐页面上添加了一项基本上名为“附加附加项”的费用。
public function change_fee_price($cart){
$fee_cost = WC()->session->get( 'my_misc_fee_cost' ); // 0 default value.
WC()->cart->add_fee("Additional Add on", $fee_cost);
}
add_action( 'woocommerce_cart_calculate_fees', array($this, 'change_fee_price'), 20, 1 );
我已在结帐页面上为管理员编辑了此费用金额。
public function editable_additional_addon_fees($ci, $fee){
if(WC()->customer->get_role() == "administrator"){
if(is_cart()){
if($fee->id == "additional-add-on"){
$fee_total = WC()->cart->display_prices_including_tax() ? $fee->amount + $fee->tax : $fee->amount ;
$fee_total = WC()->session->get( 'my_misc_fee_cost' ) ? WC()->session->get( 'my_misc_fee_cost' ) : $fee_total;
$html = "$$fee_total <strong><i>(Edit on checkout page.)</i></strong>";
return $html;
}
}
if(is_checkout()){
if($fee->id == "additional-add-on"){
$fee_total = WC()->cart->display_prices_including_tax() ? $fee->amount + $fee->tax : $fee->amount ;
$fee_total = WC()->session->get( 'my_misc_fee_cost' ) ? WC()->session->get( 'my_misc_fee_cost' ) : $fee_total;
$html = "$<input type='number' id='misc_fee_charge' name='misc_fee_charge' value='".$fee_total."'>";
return $html;
}
}
return $ci;
}
add_filter( 'woocommerce_cart_totals_fee_html', array($this, 'editable_additional_addon_fees'), 10, 2);
现在,如果管理员想要将“Additional Add On”费用名称重命名为“Extra Charges for XYZ”而不是更改金额怎么办。
woocommerce_cart_totals_fee_html
帮助编辑费用金额的 html 而不是费用名称。我想为用户提供从前端在购物车上动态命名费用的选项,而不是添加静态名称。
有谁知道如何实现这一目标?
总而言之,问题很简单。如何提供从前端动态编辑费用名称的选项!
解决方案
推荐阅读
- angular - 路由模块中的装饰器不支持函数调用
- ruby-on-rails - 渲染向导或视图取决于我在 Rails 中的选择输入
- reactjs - React Hook useEffect 缺少依赖项:'props'。包括它或删除依赖数组。useEffect 中的道具没有数据
- java - 在 FOP API 中使用代理连接到 URL
- python - 正则表达式模式与 hbase 输出匹配
- java - 有没有办法在启动该应用程序时禁用/启用 javaFx 应用程序中的元素,即窗格和按钮
- sql - 是否可以将一个表中的 2 列连接到同一个表中?
- excel - 用于更改查询 xls 源提示的 vba 代码
- postgresql - 如何使用悲观锁实现 SKIP LOCKED 功能?
- python - 将不均匀的字典写入单独的 csv 文件