使用Prestashop 1.6.1.4
主题功能
{convertPrice price=$total}
添加当前货币符号,但实际上并未转换为所选货币。
我跟着调试器运行(classes / Product.php,第3034行):
public static function convertPrice($params, &$smarty)
{
return Tools::displayPrice($params['price'], Context::getContext()->currency);
}
这很奇怪,因为convertPrice最终调用displayPrice,而Tools::convertPrice(...)
是转换货币的函数(但不添加货币符号)。
所以我将其改为:
return Tools::displayConvertPrice($params['price'], Context::getContext()->currency);
并添加到Tools.php
public function displayConvertPrice($price, $currency)
{
return Tools::displayPrice(Tools::convertPrice($price, $currency), $currency);
}
我的问题: 这是一个错误还是我错过了什么?
答案 0 :(得分:1)
谁知道开发人员想要什么,但有一个聪明的功能
{convertAndFormatPrice price=$total}
做你想做的事。
您可以打开/config/smarty.config.inc.php
,然后您会看到在smarty smartyRegisterFunction(yada yada)
中注册的所有prestashop功能。
答案 1 :(得分:0)
使用
{toolsConvertPrice price=$total}
这适用于PS 1.6.1.12。