Magento 重量范围

发布于 2024-11-09 09:22:44 字数 268 浏览 0 评论 0原文

现在我的 3 个商店都用完了一个数据库,我遇到了一个不可预见的问题。

其中一艘商店的船舶使用 UPS XML 计算从欧洲发出的运费,另一艘美国的船舶也使用 UPS XML。

问题是,由于每种产品的重量都具有全球范围,因此我在计算运费时遇到了真正的问题,因为它采用相同的值并在美国将其用作 LBS,然后在欧洲将其用作 KGS。

按照设计,UPS 在欧洲只能使用 KGS,在美国只能使用 LBS。

我无法找到有关此主题的任何信息。有没有人找到解决这个问题的方法?

Now that I have 3 stores running out of one database I've run into an unforeseen problem.

One of the stores ships calculates shipping from Europe using UPS XML, the other US also using UPS XML.

The issue is that since the weight for each product has global scope I have a real issue in calculating shipping since it takes the same value and uses it as LBS in the US, and then KGS in Europe.

By design UPS can only use KGS in Europe and only LBS in the US.

I haven't been able to find any information on this topic. Has anyone found a way to deal with this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

╰◇生如夏花灿烂 2024-11-16 09:22:44

我不确定在商店的基础上启用设置是否可以解决问题 - 这取决于底层代码是否实际正确检查设置。但值得一试。

要在商店级别激活“承运人 -> UPS -> 重量单位”配置选项而不仅仅是网站/全球,您可以更改放置在此处的核心 XML(不推荐):

magento/app/code/core/Mage/Usa/etc/system.xml

并查找选项 下的 ;0-> <字段> -> <测量单位>。将其更改为 1,保存即可完成设置。

为了以更好、灵活且升级友好的方式覆盖此选项,您需要创建一个模块。

在文件夹 magento/app/code/local 内创建文件夹结构 MyModules/XMLoverrides/etc

在该文件夹 magento/app/code/local/MyModules/XMLoverrides/etc 中创建两个文件,config.xmlsystem.xml

对于 config.xml 文件,粘贴此内容并保存:

<?xml version="1.0"?>
<config>
    <modules>
        <MyModules_XMLoverrides>
            <version>0.1.0</version>
        </MyModules_XMLoverrides>
    </modules>
</config>

对于 system.xml,粘贴此文本并保存文件。

<?xml version="1.0"?>
<config>
    <sections>
        <carriers>
            <groups>
                <ups>
                    <fields>
                        <unit_of_measure>
                            <show_in_store>1</show_in_store>
                        </unit_of_measure>
                    </fields>
                </ups>
            </groups>
        </carriers>
    </sections>
</config>

您还需要在文件夹 magento/app/etc/modules 中创建文件 MyModules_XMLoverrides.xml

<?xml version="1.0"?>
<config>
    <modules>
        <MyModules_XMLoverrides>
            <active>true</active>
            <codePool>local</codePool>
        </MyModules_XMLoverrides>
    </modules>
</config>

并保存它。应该是这样,即使您升级 Magento 并且原始 system.xml 文件可能会被覆盖,它也会继续覆盖此选项。

现在请祈祷更改此设置确实有帮助,并且我未经测试的模块示例代码可以工作。 :)

I'm not sure enabling the setting on store basis will solve the issue - it depends on if the underlaying code actually checks for the setting correctly. But it is worth a shot.

To activate the "Carriers->UPS->Weight Unit" configuration option on store level instead of just website/global you can change the core XML (not recommended) placed here:

magento/app/code/core/Mage/Usa/etc/system.xml

And look up the option <show_in_store>0</show_in_store> under <ups> -> <fields> -> <unit_of_measure>. Change that to <show_in_store>1</show_in_store>, save and you should be all set.

For the nicer, flexible and upgrade friendly way to override this option you need to create a module.

Create the folder structure MyModules/XMLoverrides/etc inside the folder magento/app/code/local.

Inside that folder magento/app/code/local/MyModules/XMLoverrides/etc create two files, config.xml and system.xml.

For the config.xml file, paste this content and save:

<?xml version="1.0"?>
<config>
    <modules>
        <MyModules_XMLoverrides>
            <version>0.1.0</version>
        </MyModules_XMLoverrides>
    </modules>
</config>

And for system.xml, paste this text and save the file.

<?xml version="1.0"?>
<config>
    <sections>
        <carriers>
            <groups>
                <ups>
                    <fields>
                        <unit_of_measure>
                            <show_in_store>1</show_in_store>
                        </unit_of_measure>
                    </fields>
                </ups>
            </groups>
        </carriers>
    </sections>
</config>

You also need to create the file MyModules_XMLoverrides.xml inside the folder magento/app/etc/modules with the content:

<?xml version="1.0"?>
<config>
    <modules>
        <MyModules_XMLoverrides>
            <active>true</active>
            <codePool>local</codePool>
        </MyModules_XMLoverrides>
    </modules>
</config>

and save it. That should be it, and it will continue to override this option even when you upgrade Magento and the original system.xml file might be overwritten.

Now just cross your fingers that changing this setting really helps, and that my untested module example-code works. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文