【问题标题】:How can I stop rounding off shipping charge in Woocommerce如何停止在 Woocommerce 中四舍五入运费
【发布时间】:2019-07-22 05:50:10
【问题描述】:

当我向 Woocommerce 添加运费 58.75 时。将其四舍五入到 59。 我要准确的运费 58.75。

有人遇到过这种情况吗?

【问题讨论】:

  • Woocommerce 默认情况下不会四舍五入运费,这可能是因为一些外部干扰。尝试一一停用插件。并仔细检查您的functions.php上是否有任何可疑的sn-ps
  • 我没有添加任何可以抵消运费的插件。这是默认功能。
  • 不,不是。除非他们不提供配置选项,否则 WooCoomerce 不会对其进行舍入。请检查您正在使用的运输插件。
  • 我找不到任何解决方案。我认为这是唯一一个将运费四舍五入的 Woocommerce :(
  • 给我一个临时访问你的网站,我可以帮你检查

标签: php wordpress woocommerce rounding shipping


【解决方案1】:

转到 WooCommerce > 设置 > 常规选项卡并确认“小数位数”为 2。

【讨论】:

  • @RohitGautam 你能用你安装的插件列表和你使用的主题更新你的问题吗?
  • 问题是我无法将小数位数设置为 2。它始终只显示 0
  • @RohitGautam 你能把 WP_DEBUG 设置为 true 并告诉我们错误显示什么吗?
  • 你是对的。默认情况下,wooCommerce 将 Number of Decimals 设置为 2。这是因为一个插件会四舍五入网站上的所有内容。我最近想通了。谢谢你的帮助:)
  • @RohitGautam 很高兴为您提供帮助。
【解决方案2】:

你应该检查你的主题文件。

导航到您的主题中的文件,该文件正在调用函数以显示价格。

可能有PHP函数round()

文档:Click here

例子:

在你的主题文件中可能有这样的代码:

<?php echo round($price); ?>

你应该把它改成:

<?php echo $price; ?>

【讨论】:

    【解决方案3】:
    /**
     * Get rounding precision for internal WC calculations.
     * Will increase the precision of wc_get_price_decimals by 2 decimals, unless WC_ROUNDING_PRECISION is set to a higher number.
     *
     * @since 2.6.3
     * @return int
     */
    function wc_get_rounding_precision() {
        $precision = wc_get_price_decimals() + 2;
        if ( absint( WC_ROUNDING_PRECISION ) > $precision ) {
            $precision = absint( WC_ROUNDING_PRECISION );
        }
        return $precision;
    }
    

    请检查 WC_ROUNDING_PRECISION 是否已设置在其他位置(可能在主题中)

    您可以设置以下一些常数来更改舍入计算:https://github.com/woocommerce/woocommerce/blob/master/includes/class-woocommerce.php#L207-L209。我相信它们会在您的 wp-config 文件中早先定义以进行更改。

    可以在这里看到,WC 将主要使用较高的那个:https://github.com/woocommerce/woocommerce/blob/64bcabf0af9a05274d53ec833a4e8c9153509bc4/includes/wc-core-functions.php#L1549-L1553。 WC_ROUNDING_PRECISION 常量,或者您设置的小数位数加 2。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-21
      • 1970-01-01
      • 2020-12-27
      相关资源
      最近更新 更多