自定义送货方式管理表单问题

Custom shipping method admin form issues

我创建了一个自定义运费集成 (based on this guide),它根据小计的百分比计算运费。此百分比在送货方式设置中设置。

前端一切正常,运费计算正确。

我的问题出在管理后台,在送货方式设置页面。我遇到的第一个问题是设置百分比的文本框前面是货币,这会使用户感到困惑,因为它期望的不是统一价格,而是订单小计的百分比。

我在添加的运输方式列表中也有同样的问题,我设置的值前面有货币,这样不好。

我遵循的指南中有一个“添加模板”部分,但该模板似乎没有任何影响。我尝试在模板中放入虚假字母并清除缓存,但它们并没有出现在设置页面的任何地方。

我想在这里做的是完全删除货币指标,或者用 % 替换它。

我遇到的第二个问题是没有考虑语言。我创建了一个 messages.en.yml 文件和一个 messages.fr.yml 文件。当然,两者都遵循相同的结构,并且所有字符串都经过翻译。但是,如果我将 OroCommerce 设置为法语,我不会得到翻译后的字符串,而是英语字符串。

这是显示我的两个问题的屏幕截图:

(应翻译“价格百分比”等字符串)

您知道我该如何解决这些问题吗?谢谢

在 jsmodules.yml 配置文件的 shipping-rule-method-view.js. You can override this JS view with the map section 中添加了货币。

根据安德烈的回答,我设法找到了一些有用的东西。我会为遇到相同问题的任何人添加更多详细信息。

对于翻译问题,似乎通过添加语言环境重命名文件 messages.fr_FR.yml 解决了问题。

关于管理菜单上的货币部分,您必须在捆绑包的 Resources/config 文件夹中创建一个 jsmodules.yml 文件,不是 Resources/config/oro,这就是 none 我的配置被考虑在内的原因。

在使用 map 编写 jsmodules 文件时,如果要覆盖 JS 文件,则 必须 省略文件扩展名。当您覆盖其他内容时,例如 HTML 文件,您 必须 放置文件扩展名。

我的文件是这样写的:

map:
  "*":
    oroshipping/js/app/views/shipping-rule-method-view: gdmshipping/js/shipping-rule-method-view

不过有一点需要注意。这将替换所有运输集成的显示,因此所有其他运输类型(例如统一费率)的货币符号将为 replaced/removed,因此请记住这一点。