如何在 WooCommerce 中对自定义购物车费用进行征税

2023-12-02

准确地找到了我正在寻找的代码片段,无论价格如何,都可以为每个单独的购物车项目添加固定费用金额。这个网站是卖轮胎的。所以每个轮胎都会充电3$.

这是我正在使用且有效的代码:

add_action('woocommerce_cart_calculate_fees', function() {
    if (is_admin() && !defined('DOING_AJAX')) {
        return;
    }

    $feetot = WC()->cart->get_cart_contents_count();

    WC()->cart->add_fee(__('Specific Duty on New Tires', 'txtdomain'), 3 * $feetot);
});

我不太擅长 PHP,我正在边学习边学习。我确实花了 3 个小时尝试修改这段代码,以便$3费用也将被征税。但我无法弄清楚。

以下是我尝试对费用征税的尝试之一,但它不起作用:

add_action('woocommerce_cart_calculate_fees', function() {
    if (is_admin() && !defined('DOING_AJAX')) {
        return;
    }
    
    $feetot = WC()->cart->get_cart_contents_count();

    WC()->cart->add_fee(__('Specific Duty on New Tires', 'txtdomain', $taxable = true, $tax_class = ''), 3 * $feetot);
});

我做错了什么?请提供任何帮助。


要使其正常工作,请在代码中替换以下行:

WC()->cart->add_fee(__('Specific Duty on New Tires', 'txtdomain', $taxable = true, $tax_class = ''), 3 * $feetot);

与以下代码行(see WC_Cart add_fee() method):

WC()->cart->add_fee( __('Specific Duty on New Tires', 'text_domain'), $feetot * 3, true, '' );

最后一个参数用于指定与“标准”税级不同的税级。

所以你正确的挂钩函数代码将是:

add_action('woocommerce_cart_calculate_fees', 'custom_cart_items_fee' );
function custom_cart_items_fee( $cart ) {
    if ( is_admin() && ! defined('DOING_AJAX') ) {
        return;
    }

    $fee_amount = $cart->get_cart_contents_count() * 3;

    $cart->add_fee( __('Specific Duty on New Tires', 'text_domain'), $fee_amount, true, '' );
}

代码位于活动子主题(或活动主题)的functions.php 文件中。它应该有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 WooCommerce 中对自定义购物车费用进行征税 的相关文章

随机推荐

  • 非法参数:未定义、字符串

    注册用户时出现此错误 节点 13225 UnhandledPromiseRejectionWarning 错误 非法 参数 未定义 字符串 在 Object bcrypt hashSync home admin Desktop projec
  • Scala 编译 OptionBuilder 时出错

    我正在使用 Apache commons cli 1 2 进行命令行解析 我的代码中有以下内容 import org apache commons cli OptionBuilder OptionBuilder withLongOpt db
  • 为什么 ghci 找不到我尝试编译的 hs 文件?

    我是第一次学习 Haskell 我不明白为什么 ghci 找不到我正在尝试编译的文件 特别是因为我保存了文件 这是我的文件 import System IO trueAndFalse True False 现在这就是我在编译器中运行的内容
  • 防止双击按钮

    我一直遇到用户双击网络应用程序上的操作按钮的问题 这意味着重复的记录被添加到我的数据库中 有时用户会被收取两次费用 因为该操作运行了两次 在 ASP NET 中防止双击的最佳方法是什么 我发现您在面对未启用 JavaScript 的用户时对
  • 如何在 Pyqt5 setcentralWidget 中取回我的主窗口? [复制]

    这个问题在这里已经有答案了 如何取回我的主窗口 从我的主窗口 如果我按 打开左边的盒子 按钮或 打开右边的盒子 按钮 它起作用了 同时 如果我按下 Back 从左框按钮 什么也不会发生 如何获取主窗口 简单来说 我想知道如何设置布局和删除布
  • Room 为离线应用程序创建备份的最佳方法?

    所以我可以说正在使用非常复杂的数据库many to many数据库设计与foreign keys并连接表 它是Room数据库 我想为其创建备份系统 因为它是离线应用程序 我需要导出数据库并将其存储到谷歌驱动器的应用程序文件夹中 最近几天我读
  • 搜索按钮上的进度条

    我有这个 C 代码来显示进度条 public partial class FormPesquisaFotos Form public FormPesquisaFotos InitializeComponent private void Fo
  • switch 语句的逻辑部分或 case 部分如何?

    如果您有一个 switch 语句并希望在值为一个值时运行某些代码or另一个你怎么做 以下代码始终进入默认情况 include
  • Java Paths.get .... readAllBytes(path)) 不适用于相对路径

    我是 Java 新手 正在尝试构建 FX 应用程序 我的功能之一旨在用其他字符串替换某些字符串 只要我定义目标文件的绝对路径 该脚本就可以正常工作 但当我使用相对路径时 该脚本就会中断 问题出在 readAllBytes 方法中 该方法仅适
  • JPA - 可以在不提供可选参数的情况下调用存储过程吗?

    我正在调用带有许多可选参数的第三方存储过程 它位于 MS SQL Server 2008 R2 中 如下所示 procedure dbo pTest ReportDate varbinary max out Optional1 varcha
  • “?”附近的语法不正确: Nhibernate 生成的查询

    我在 Nhbernate 中使用位置参数时遇到问题 Criteria GroupProperty 正在发出带有命名变量和位置变量的 SQL 这个说法 session CreateCriteria typeof MatchStageFrom
  • 如何将 Matlab 函数的输出分配给单行中的变量?

    matlab中有没有一种方法可以将matlab中函数的输出分配给单行内的向量 例如 此函数应分配周长和面积值 function p a square geom side p perimeter square side a side 2 p
  • 分两列打印

    我们应该形成一个出现 108 次的名称数组 我们应该在左列中包含名称 1 54 在右列中包含名称 55 108 当一页有 108 个名称后 我们初始化数组并重新开始 我的代码的输出显示打印的名称 1 54 并且名称 55 108 不是位于同
  • Angular 2-ngModel 中的更改未反映在下拉列表中

    所以我有一个非常简单的场景 其中在下拉列表更改时显示确认弹出窗口 如果用户选择取消 我需要将下拉值恢复为旧值 我认为我做得正确 甚至在 DOM 中 ngModel 的值与select正在反映 但不知何故 它并没有恢复显示中的选定值 这是我的
  • 以编程方式获取框架 ID

    有人知道是否有办法以编程方式获取当前框架 ID 是的 您可以在 Play 类上获取该属性 Play id
  • 离散小波变换 Matlab

    我正在尝试使用 Matlab 小波工具箱中提供的函数来创建图像的多级离散小波分解 提取系数 操作它们 并将它们重新组合回图像中 我尝试使用许多函数 但它们似乎都不能满足我的需要 以下是执行此操作的步骤 使用wavedec2将图像分解为 C
  • 在 C# 中,这段带有“get”的代码是什么意思?

    我是 C 新手 private string m public string M get return m C 中的这种 getter setter 是否像 Java 一样 这部分是一个字段 private string m 这部分是一个只
  • 将数组/对象树的键转换为小写

    我目前正在优化一个 PHP 应用程序 发现一个函数被调用了大约 10 20k 次 所以我想我应该从那里开始优化 function keysToLower obj if is object obj is array obj return ob
  • 从列表中随机选择

    我在 Excel 工作表 A1 B115 中有一个项目列表 目前我可以输入 10 个变量 从列表中检索正确的数据 现在代码 C1 1 运行A1 A115并检查值是否在1000 2000之间 如果是这样 请将 B 值复制到某处 C2 1 运行
  • 如何在 WooCommerce 中对自定义购物车费用进行征税

    准确地找到了我正在寻找的代码片段 无论价格如何 都可以为每个单独的购物车项目添加固定费用金额 这个网站是卖轮胎的 所以每个轮胎都会充电3 这是我正在使用且有效的代码 add action woocommerce cart calculate