价格在 WordPress 中使用 twig/timber 显示不正确
Price is not displaying properly with twig/timber in WordPress
我的价格无法在 WordPress 中使用 twig/timber 正确显示,因此我必须将变量设置为:
{% set salestax = toolprice * (taxrate | number_format / 100) %}
和 {% set tooltotal = toolprice * (1 + taxrate | number_format / 100) %}
我的所有输出都正常,但它只会显示为 1575.5 而不是 1575.50
Twig 的 number_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) }}
我的价格无法在 WordPress 中使用 twig/timber 正确显示,因此我必须将变量设置为:
{% set salestax = toolprice * (taxrate | number_format / 100) %}
和 {% set tooltotal = toolprice * (1 + taxrate | number_format / 100) %}
我的所有输出都正常,但它只会显示为 1575.5 而不是 1575.50
Twig 的 number_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) }}