問題描述
我想在 WooCommerce 中的價格標簽后顯示一段文字.我有一個適用于我的functions.php 的代碼,但它顯示在所有產品類別中.
I would like to display a piece of text after the price tag in WooCommerce. I have a code that is working for my functions.php, but it shows on all product categories.
我想知道是否有人知道如何使此自定義文本僅顯示選定的類別;或者甚至更好,未選擇的產品類別,因為會顯示文本的產品類別比不顯示的產品類別多得多.
I was wondering if someone knows how to make this custom text to show for only selected categories; or even better, unselected product categories as there are a lot more product categories that will display the text than the ones who doesn't.
我的實際代碼:
add_filter( 'woocommerce_get_price_html', 'custom_price_message' );
function custom_price_message( $price ) {
$mt = ' per M/T';
return $price . $mt;
}
推薦答案
試試下面的代碼,使用 has_term()
條件函數來定義產品類別:
Try the following code that uses has_term()
conditional function for defined product categories:
add_filter( 'woocommerce_get_price_html', 'conditional_price_suffix', 20, 2 );
function conditional_price_suffix( $price, $product ) {
// HERE define your product categories (can be IDs, slugs or names)
$product_categories = array('t-shirts','hoodies');
if( has_term( $product_categories, 'product_cat', $product->get_id() ) )
$price .= ' ' . __('per M/T');
return $price;
}
代碼位于活動子主題(或活動主題)的 function.php 文件中.經測試有效.
Code goes in function.php file of your active child theme (or active theme). Tested and works.
要排除定義的產品類別,您將替換:
if( has_term( $product_categories, 'product_cat', $product->get_id() ) )
簡單地通過:
if( ! has_term( $product_categories, 'product_cat', $product->get_id() ) )
這篇關于WooCommerce 中選定產品類別的自定義產品價格后綴的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!