首页 > 解决方案 > WordPress 中的树枝/木材无法正确显示价格

问题描述

我有一种情况,我的价格在 WordPress 中使用树枝/木材无法正确显示,因此我必须将变量设置为:

{% set salestax = toolprice * (taxrate | number_format / 100) %}{% set tooltotal = toolprice * (1 + taxrate | number_format / 100) %}

我的一切都正常输出,但它只会显示为1575.5而不是1575.50

标签: wordpresstwigtimber

解决方案


Twig'snumber_format是 PHP 的number_format. 这意味着您可以传递 3 个额外的参数:decimals, 'decimal_separator',thousands_separator

{{ price | number_format(2) }} {# out : 100.50 #}

如果您不想decimals每次都通过,您可以通过执行以下操作覆盖过滤器的默认参数:

<?php
    $twig = new \Twig\Environment($loader);
    $twig->getExtension(\Twig\Extension\CoreExtension::class)->setNumberFormat(3, '.', ',');

额外说明:您不应该格式化数字来进行计算,只在最终输出上应用过滤器,以防止舍入错误。

{% set salestax = toolprice * taxrate  100 %}
{{ salestax | number_format(2) }}

{% set tooltotal = toolprice * (1 + taxrate) / 100 %}
{{ tooltotal|number_format(2) }}

推荐阅读