-1

上个月我一直在尝试调试一个让我发疯的 Loaded 问题。

我想在这里发布它,以防其他人有同样的问题,或者可能,这里比我了解更多的人可能会看到它发生的原因,并可以建议我配置错误的地方。

特指邮件订单通知中的产品线:

$email_order .= EMAIL_TEXT_PRODUCTS . "\n" .
                EMAIL_SEPARATOR . "\n" .
                $this->products_ordered .
                EMAIL_SEPARATOR . "\n";

使用“银行转账”创建订单时,这些金额显示为“含税”——这与预期一致

使用“PayPal”创建订单时,这些金额显示为“不含税”——这与预期不同。

似乎在文件 includes/functions/general.php 中有函数 tep_add_tax() 确定是返回值 Tax Inc 还是 Tax Exc。

这一行:

if ( (DISPLAY_PRICE_WITH_TAX == 'true') && ($tax > 0) && $_SESSION['sppc_customer_group_show_tax'] == '1') {

在“银行转账”订单上返回 true,但在 PayPal 订单上返回 false。

我只是复制了这个函数,将副本重命名为 tep_force_add_tax() 并删除了 if {} else {} 部分,只是强制添加了税款,这解决了我的问题!

我 99.9% 确定问题出在这个变量上:

$_SESSION['sppc_customer_group_show_tax']

我不知道它是什么,它是如何设置的,为什么 PayPal 在银行转账时不设置它?

欢迎大家讨论?

4

1 回答 1

0

sppc_customer_group_show_tax 似乎可能是问题的根源。

客户组税收设置位于customers_groups.php 页面上的管理-> 客户-> 客户组中。

控制含税与不含税的字段标记为customers_group_show_tax。

我猜 Paypal 模块可能会尝试使用 sppc_customer_group_show_tax 关联数组 id 从 customers_group 表中获取此信息,而它应该使用 customers_group_show_tax 代替。

于 2014-04-08T19:47:44.117 回答