php facetwp woocommerce布局构建器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php facetwp woocommerce布局构建器相关的知识,希望对你有一定的参考价值。
<?php
/** layout builder output for woocommerce custom fields **/
add_filter( 'facetwp_builder_item_value', function( $value, $item ) {
if ( 0 === strpos( $value, 'woo/' ) ) {
$field_key = substr( $value, 4 );
if ( 'price' == $field_key ) {
$product = wc_get_product( get_the_ID() );
$price = $product->get_price_html();
$value = str_replace( $item['source'], $price, $value );
} elseif ( 'sale_price' == $field_key ) {
$product = wc_get_product( get_the_ID() );
$price = $product->get_sale_price();
if ( $price > 0 ) {
$value = str_replace( $item['source'], wc_price( $price ) . $product->get_price_suffix(), $value );
} else {
$value = str_replace( $item['source'], '', $value );
}
} elseif ( 'regular_price' == $field_key ) {
$product = wc_get_product( get_the_ID() );
$price = $product->get_regular_price();
if ( $price > 0 ) {
$value = str_replace( $item['source'], wc_price( $price ) . $product->get_price_suffix(), $value );
} else {
$value = str_replace( $item['source'], '', $value );
}
} elseif ( 'average_rating' == $field_key ) {
$product = wc_get_product( get_the_ID() );
$rating = $product->get_average_rating();
if ( $rating !== 0 ) {
$value = str_replace( $item['source'], wc_get_rating_html( $rating ), $value );
} else {
$value = str_replace( $item['source'], '', $value );
}
} elseif ( 'stock_status' == $field_key ) {
$product = wc_get_product( get_the_ID() );
$value = str_replace( $item['source'], wc_get_stock_html( $product ), $value ); }
}
/** TODO
** product_type, on_sale - not sure why or how you would use these
**/
return $value;
}, 10, 2 );
以上是关于php facetwp woocommerce布局构建器的主要内容,如果未能解决你的问题,请参考以下文章
php facetwp在facetwp模板中使用woocommerce占位符图像
php facetwp woocommerce facetwp-template with hooks
php facetwp指数“任何”的woocommerce变化
php facetwp woocommerce术语描述
php facetwp输出woocommerce明星
php facetwp woocommerce模板