Prestashop 1.7中的Smarty操作
Smarty operation in Prestashop 1.7
我正在尝试在 Prestashop 1.7 中对 product-discounts.tpl 中的两个 smarty 变量进行数学运算,但结果是错误的...
{$product.regular_price}
[输出:12,85 欧元]
{$quantity_discount.discount}
[产出:9.8%]
{$product.regular_price*$quantity_discount.discount}
[输出:117,6] 应该是:12.85*9.8= 125.93
有什么想法吗?
我试过:
{$product.regular_price|floatval}
[输出:12] 应该是:12.85
提前致谢
Prestashop 1.7
实际上,这是因为价格 12,85 € 中的逗号,因此,如果您将逗号替换为点,那么您将获得正确的值 125.93
我认为最简单的解决方案是在 tpl 文件中分配一个新变量,并将 regular_price
12,85 中的逗号替换为点。
顺便说一句,您也可以用控制器中的点替换逗号,但是如果您想在模板文件中执行数学运算,您可以这样做:
首先,将 {$product.regular_price}
赋值给 regularPrice
变量,并将逗号替换为点,如下所示:
{assign var=regularPrice value=$product.regular_price|replace:',':'.'}
我希望 $quantity_discount.discount
总是包含点,但如果还有一个逗号而不是点,那么,
{assign var=quantityDiscount value=$quantity_discount.discount|replace:',':'.'}
并且,您要做的最后一件事是将变量 regularPrice
和 quantityDiscount
彼此相乘
{assign var=total_price value=$regularPrice * $quantityDiscount}
然后像这样在 tpl 文件中显示 total_price
:
{$total_price}
您可以使用以下方式
{$product.regular_price_amount*$quantity_discount.discount}
regular_price用于价格显示。
如果您想做一些数学计算,那么您可以使用产品的 regular_price_amount 值。
我正在尝试在 Prestashop 1.7 中对 product-discounts.tpl 中的两个 smarty 变量进行数学运算,但结果是错误的...
{$product.regular_price}
[输出:12,85 欧元]
{$quantity_discount.discount}
[产出:9.8%]
{$product.regular_price*$quantity_discount.discount}
[输出:117,6] 应该是:12.85*9.8= 125.93
有什么想法吗?
我试过:
{$product.regular_price|floatval}
[输出:12] 应该是:12.85
提前致谢
Prestashop 1.7
实际上,这是因为价格 12,85 € 中的逗号,因此,如果您将逗号替换为点,那么您将获得正确的值 125.93
我认为最简单的解决方案是在 tpl 文件中分配一个新变量,并将 regular_price
12,85 中的逗号替换为点。
顺便说一句,您也可以用控制器中的点替换逗号,但是如果您想在模板文件中执行数学运算,您可以这样做:
首先,将 {$product.regular_price}
赋值给 regularPrice
变量,并将逗号替换为点,如下所示:
{assign var=regularPrice value=$product.regular_price|replace:',':'.'}
我希望 $quantity_discount.discount
总是包含点,但如果还有一个逗号而不是点,那么,
{assign var=quantityDiscount value=$quantity_discount.discount|replace:',':'.'}
并且,您要做的最后一件事是将变量 regularPrice
和 quantityDiscount
彼此相乘
{assign var=total_price value=$regularPrice * $quantityDiscount}
然后像这样在 tpl 文件中显示 total_price
:
{$total_price}
您可以使用以下方式 {$product.regular_price_amount*$quantity_discount.discount}
regular_price用于价格显示。 如果您想做一些数学计算,那么您可以使用产品的 regular_price_amount 值。