#woocommerce #timber
#woocommerce #древесина
Вопрос:
Как мне получить цену продукта Woocommerce, которую я бы получил, используя <?php echo $product->get_price_html(); ?>
шаблон WordPress, не связанный с лесоматериалами?
Я пытался {{ product.price }}
, но это вызывает ошибку, которая гласит:
price was called incorrectly. Product properties should not be accessed directly.
Я знаю, что могу получить его с помощью шаблона Woocommerce {% do action('woocommerce_single_product_summary') %}
, но:
- Мне нужен необработанный неформатированный текст, а не содержимое шаблона Woocommerce.
- действие Woocommerce также получает кучу других вещей, которые мне не нужны.
Итак, как мне получить к нему правильный доступ?
Ответ №1:
В итоге я добавил в Timber пользовательскую функцию, которая возвращает исходное значение цены. Это отправляется в functions.php
файл:
public function add_to_twig( $twig ) {
$function = new Twig_Function('myprice', function () {
global $product;
$myprice = $product->get_price();
return $myprice;
});
$twig->addFunction($function);
return $twig;
}
его можно использовать в любом шаблоне Twig с {{ myprice() }}