![](/img/trans.png)
[英]how to increase shipping cost depending on quantity of order? in prestashop
[英]Prestashop shipping cost depending of country
我正在升級Prestashop上的電子商店。 我想根據發送國家/地區來編輯運輸(承運人)費用。 從理論上講,我想在后台將delivery = 1
價格設為delivery = 1
,然后在代碼中根據國家/重量或其他選項進行編輯。
我想我發現了獲得運費的功能。 這是getTotalShippingCost或這是getOrderTotal請告訴我是否錯誤。
我現在如何在getOrderTotal中獲取要交付的國家/地區名稱?
if ($type == Cart::ONLY_SHIPPING)
return $shipping_fees;
或者,如果在此時無法獲得地址,請告知該地址。 在ParentOrderController.php或PaymentModule.php中還是其他地方?
您可以在Prestashop 文檔中閱讀如何管理運輸/承運人,以及在不使用外部模塊的情況下獲得每個國家/地區的運輸價格(默認情況下,Presta使用“區域”),您可以為每個國家/地區創建區域並為每個新的國家/地區設置運輸成本區域。 所有這些操作都可以在后台進行,而無需更改核心。
但是,如果您決定在代碼中執行此操作,則請記住,直接更改核心文件被認為是不好的做法。 最好使用內置功能 。
$shippingCostTaxExc can be found in _assignSummaryInformations method in /controllers/front/ParentOrderController.php file.
$option array in /classes/Cart.php
更新:您可以使用Context對象從任何模型/控制器類中訪問一些通用對象,例如Currency,Cookie等和Country,因此在您的情況下,如果您需要Country名稱,它將如下所示:
$context = Context::getContext();
$context->country->name[1]; // for language with id=1
$context->language->id; // if you need to get actual customer language
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.