我从这里得到了这段代码(Display woocommerce sale end date)
add_filter( 'woocommerce_get_price_html', 'custom_price_html', 100, 2 );
function custom_price_html( $price, $product )
{
global $post;
$sales_price_to = get_post_meta($post->ID, '_sale_price_dates_to', true);
if(is_single() && $sales_price_to != "")
{
$sales_price_date_to = date("j M y", $sales_price_to);
return str_replace( '</ins>', ' </ins> <b>(Sale ends '.$sales_price_date_to.')</b>', $price );
}
else
{
return apply_filters( 'woocommerce_get_price', $price );
}
}
在产品页面上的效果非常好,但我需要帮助才能显示此代码,以显示销售结束的日期。例如。根据具体情况,销售在1天/ 2天/ 3天等结束。此外,还不仅在产品页面上显示销售产品页面。
答案 0 :(得分:0)
此代码应该可以胜任!将其粘贴在functions.php
中add_filter( 'woocommerce_get_price_html', 'add_end_sale_to_price', 100, 2 );
function add_end_sale_to_price( $price, $product )
{
global $post;
$sales_price_to = get_post_meta($post->ID, '_sale_price_dates_to', true);
if($sales_price_to != "")
{
$now = time();
$sales_price_date_to = date("Y-m-d", $sales_price_to);
$end_date = strtotime($sales_price_date_to);
$days_left = $end_date - $now;
$days_left = floor($days_left / (60 * 60 * 24));
return str_replace( '</ins>', ' </ins> <b>(Sale ends in '.$days_left.' days)</b>', $price );
}
else
{
return apply_filters( 'woocommerce_get_price', $price );
}
}
干杯,
弗朗西斯