首页 > 解决方案 > 在 WooCommerce 之外使用 Timber、Twig 和 ACF 获取 WooCommerce 产品的产品价格

问题描述

我在 WooCommerce 之外构建了一个自定义产品循环,并且我在 ACF 中设置了一个中继器循环,他们可以在其中选择他们想要显示的产品并返回产品的对象;但是,这似乎与您使用 WC 函数返回的相同对象不太匹配get_product,例如,价格详细信息返回如下:

[_regular_price] => 14.99
[_sale_price] => 
[_price] => 14.99

这些字段无法像许多其他字段一样访问,因为它们以下划线开头。

上述数据来自一个循环,例如:

{% for product in post.get_field('showcase_products') %}
    ...
{% endfor %}

我也尝试product.get_price在 Twig 中做,但它不起作用。

然后我可以尝试执行以下操作:

{% set price = fn('wc_get_product', product.id) %}

然后我可以使用以下任何一种:

{{ fn('print_r', price.price) }}
{{ fn('print_r', price.get_price) }}
{{ fn('print_r', price.get_price_html) }}

有没有办法能够wc_get_product在每个循环中不额外调用 WC 函数的情况下获取上述数据?

标签: wordpresswoocommercetwigadvanced-custom-fieldstimber

解决方案


推荐阅读