Я использую следующий код для отображения процентной скидки для простых и переменных продуктов, и он отлично работает:
add_action( 'woocommerce_before_shop_loop_item_title', 'bbloomer_show_sale_percentage_loop', 25 );
function bbloomer_show_sale_percentage_loop() {
global $product;
if ( !$product->is_on_sale() ) return;
if ( $product->is_type( 'simple' ) ) {
$max_percentage = ( ( $product->get_regular_price() - $product->get_sale_price() ) / $product->get_regular_price() ) * 100;
} elseif ( $product->is_type( 'variable' ) ) {
$max_percentage = 0;
foreach ( $product->get_children() as $child_id ) {
$variation = wc_get_product( $child_id );
$price = $variation->get_regular_price();
$sale = $variation->get_sale_price();
if ( $price != 0 && !empty( $sale ) )$percentage = ( $price - $sale ) / $price * 100;
if ( $percentage > $max_percentage ) {
$max_percentage = $percentage;
}
}
}
if ( $max_percentage > 0 )echo "
" . round( $max_percentage ) . "% Discount
";
}
Как звонить на страницах шаблонов:
Теперь я хочу рассчитать сумму скидки, чтобы показать покупателю выгоду от покупки этого продукта.
Я нашел код для достижения этой цели. , но у этого кода есть две основные проблемы:
Первая: он применим только к простым продуктам.
Вторая: добавление этого кода в функции. php, произойдет сбой страницы оплаты WooCommerce.
Есть ли лучший код или решение для этого, чтобы я мог рассчитать и показать прибыль клиента для всех продуктов WooCommerce (простых и переменных)?
Код, показывающий прибыль клиента от покупки простого продукта:
add_action( 'woocommerce_single_product_summary', 'simple_product_saving_amount', 11 );
function simple_product_saving_amount() {
global $product;
if( $product->is_type('simple') && $product->is_on_sale() ) {
$regular_price = (float) wc_get_price_to_display( $product, array('price' => $product->get_regular_price() ) );
$active_price = (float) wc_get_price_to_display( $product, array('price' => $product->get_sale_price() ) );
$saved_amount = $regular_price - $active_price;
echo '
'. __(" your profit ") .': ' . wc_price($saved_amount) . '
';}
}
Подробнее здесь: https://stackoverflow.com/questions/765 ... duct-pages
Показывать сумму экономии для распродажных продуктов на страницах отдельных продуктов WooCommerce. ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Скрыть сопутствующие товары на отдельных страницах определенных продуктов в Woocommerce
Anonymous » » в форуме Php - 0 Ответы
- 19 Просмотры
-
Последнее сообщение Anonymous
-