【发布时间】:2014-08-29 14:47:23
【问题描述】:
如何为我的每个承运人设置不同的免费送货边界?例如 承运人 1:免费送货起价 @ 100 美元 承运人 1:200 美元起免运费
【问题讨论】:
标签: prestashop
如何为我的每个承运人设置不同的免费送货边界?例如 承运人 1:免费送货起价 @ 100 美元 承运人 1:200 美元起免运费
【问题讨论】:
标签: prestashop
这很容易。转到后台 -> 运输 -> 价格范围。您可以为每个单独的运营商添加不同的范围。创建所有范围后,再次单击 Shipping。滚动到底部,您将看到“按运营商、地理区域和范围划分的费用”。瞧!
【讨论】:
将模块编辑为特定的快递员。
【讨论】:
好吧,我不是那样做的。我使用覆盖来添加第二个免费送货价格,然后在 cart.php 中我将它连接到特定的运营商(id) 覆盖:
'PS_SHIPPING_FREE_PRICE' => array(
'title' => $this->l('Free shipping starts at'),
'suffix' => $this->context->currency->getSign(),
'cast' => 'floatval',
'type' => 'text',
'validation' => 'isPrice'),
'PS_SHIPPING_FREE_PRICE2' => array(
'title' => $this->l('Free shipping2 starts at'),
'suffix' => $this->context->currency->getSign(),
'cast' => 'floatval',
'type' => 'text',
'validation' => 'isPrice'),
cart.php:
$configuration = Configuration::getMultiple(array( 'PS_SHIPPING_FREE_PRICE', 'PS_SHIPPING_FREE_PRICE2', 'PS_SHIPPING_HANDLING', 'PS_SHIPPING_METHOD', 'PS_SHIPPING_FREE_WEIGHT' ));
// Free fees
$free_fees_price = 0;
if (isset($configuration['PS_SHIPPING_FREE_PRICE']))
if($id_carrier==27)
$free_fees_price = Tools::convertPrice((float)$configuration['PS_SHIPPING_FREE_PRICE2'], Currency::getCurrencyInstance((int)$this->id_currency));
else
$free_fees_price = Tools::convertPrice((float)$configuration['PS_SHIPPING_FREE_PRICE'], Currency::getCurrencyInstance((int)$this->id_currency));
这对我来说很好,但是每次更新运营商时,它都会获得新的 ID,因此您必须更新和 cart.php 也最好使用 cart.php 的覆盖,但我就是做不到
【讨论】: