修改
对于所有这些运输选项,看起来被调用以获得费率代码返回相同的东西。看起来我需要找到一种方法来为每个发货选项定义reate代码。
结束修改
我在Magento中为UPS Freight运输创建了一个自定义运输模块。我需要货运+升降门,货运+住宅,货运+升降闸门等选项。住宅。根据另一个板上的响应,我只需创建单独的方法,而不是为每个选项设置复选框。
从图像中可以看出,Magento正在正确计算价格。我遇到的问题是,当我选择其中一个选项并点击“更新总计”时,它将恢复为价格最低的第一个选项。检查单选按钮上的输入后,我发现它们都具有相同的值。
<ul>
<li>
<input name="estimate_method[2]" type="radio" value="excellence_excellence" id="s_method_excellence_excellence_2" class="radio">
<label for="s_method_excellence_excellence_2">Freight<span class="price">$678.88</span></label>
</li>
<li>
<input name="estimate_method[2]" type="radio" value="excellence_excellence" id="s_method_excellence_excellence_2" class="radio">
<label for="s_method_excellence_excellence_2">Freight (Residential)<span class="price">$744.66</span></label>
</li>
.
. and so on.
.
</ul>
由于所有输入都具有相同的值“excellence_excellence”,因此价格只会默认回到第一个值。不幸的是,我不知道如何解决这个问题。
以下是我的Model类,config.xml和system.xml文件的链接。任何帮助,想法或资源都将非常感激。
答案 0 :(得分:2)
我看了你的模型文件,它有这个:
$method->setCarrier($this->_code);
$method->setMethod($this->_code);
和$ this-&gt; _code是“卓越”,因此您可以通过添加允许方法的名称来考虑更改方法,如:
$method->setMethod($this->_code.$allowedmethod_code); //where allowedmethod_code have to be set based on your custom method names
答案 1 :(得分:0)
试试这个
"<input name="estimate_method[]"
这将为此特定输入生成唯一的数组索引。