私は私の子供のテーマのfunction.phpに通常の価格と販売価格を表示するためにこのコードを持っていました、そしてそれはWooCommerce v2.6.14でうまく働いていました。
しかし、このスニペットはWooCommerceバージョン3.2.3ではもう機能しません。
どうすれば修正できますか?
ここにそのコードです:
add_filter( "woocommerce_sale_price_html", "woocommerce_custom_sales_price", 10, 2 );
function woocommerce_custom_sales_price( $price, $product ) {
$saved = wc_price( $product->regular_price - $product->sale_price );
return $price . sprintf( __("<p>Save %s</p>", "woocommerce" ), $saved );
}
助けてくれてありがとう。
回答:
回答№1は1woocommerce_sale_price_htmlフィルタが存在しなくなりました woocommerce_get_price_html
代わりに。これは、商品が販売されているかどうかにかかわらずすべてに適用されるため、商品がコードで販売されているかどうかを確認する必要があります。
add_filter( "woocommerce_get_price_html", "modify_woocommerce_get_price_html", 10, 2 );
function modify_woocommerce_get_price_html( $price, $product ) {
if( $product->is_on_sale() && ! is_admin() )
return $price . sprintf( __("<p>Save %s</p>", "woocommerce" ), $product->regular_price - $product->sale_price );
else
return $price;
}