基于Opencart中的货币征税

时间:2013-03-28 09:36:34

标签: opencart currency

目前,税收似乎根据登录客户的位置显示。

由于两个原因,这对我不起作用。我有一个扩展,根据客户IP自动显示货币加上没有登录选项,只是访客结账。

所以我真的需要根据显示的货币显示正确的价格。

有没有人知道代码的位置,或者如何正确调整显示的价格?

非常感谢任何帮助。

由于

-James

3 个答案:

答案 0 :(得分:1)

我猜您应该扩展您用于根据IP地址显示货币的扩展程序。

找到填写了基于用户IP地址的货币的代码行,并调用:

$this->currency->set($currency_code);

其中$currency_code应为3个字符的货币ISO代码(例如 USD EUR 等)在管理中设置的货币。

这种方式您可以设置用于价格计算的货币 - 这反映了基于用户IP地址的货币。然后将此货币代码保存到会话和cookie中,以便它可以在OpenCart前端的任何页面上运行。

答案 1 :(得分:0)

我想是的

返回当前设定货币的3字符ISO 4217货币代码。

// Return when Pound Sterling is the set currency
$currency_code = $this->currency->getCode();
var_dump($currency_code); // string 'GBP' (length=3)

你也可以

$this->currency->set($currency_code);

请找到货币文件https://github.com/opencart/opencart/blob/master/upload/system/library/currency.php

由于

答案 2 :(得分:0)

我想我找到了正确的方法:转到文件系统/ library / tax.php。

第27行:

if(!$reg){
            if($currentCurrency == "CHF"){
                $country_id = 204;
            }else if($currentCurrency == "EUR"){
                $country_id = 81;
            }
        }

这将根据所选货币设置用户所在的国家/地区,并将设置用于纳税计算的国家/地区。