亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何刪除只有一種變體的可變產品的價格范圍?

如何刪除只有一種變體的可變產品的價格范圍?

PHP
qq_笑_17 2023-10-15 17:02:44
我有一個基于 WordPress 和 woocommerce 構建的家具網站。為了保持一致性,我希望所有床架都有變化,即使它們只有一種尺寸(特大號床、大號床、單人床)。然而,woocommerce 上的變體產品自然有一個價格范圍,描述變體之間的最低價格到最高價格。如果我只有一種變體,它有一個空白的最低價格,并且仍然有連字符,然后是最高價格,如下所示,使它看起來像是負數。如何刪除具有一種變體的產品的連字符(包括禁用所有其他變體的產品)。這個網站是 khemlanimart.com編輯:我不希望它只是替換為最低價格,因為當存在一種變化時,最低價格為空。如果我想在只有一種變體的情況下將其替換為最高價格,并且在有多種變體時仍然保持價格范圍
查看完整描述

1 回答

?
慕村225694

TA貢獻1880條經驗 獲得超4個贊

已更新 (錯誤地替換$this為$product)。


請嘗試以下操作,這應該會消除具有一種變體的可變產品的價格范圍:


add_filter( 'woocommerce_variable_price_html', 'variable_products_with_one_variation', 10, 2 );

function variable_products_with_one_variation( $price_html, $product ) {

? ? $prices = $product->get_variation_prices( true );

? ??

? ? if( count($prices['price']) == 1 ) {

? ? ? ? $active_price = end( $prices['price'] );

? ? ? ? $reg_price? ? = end( $prices['regular_price'] );

? ? ? ??

? ? ? ? if ( $this->is_on_sale() ) {

? ? ? ? ? ? $price = wc_format_sale_price( wc_price( $reg_price ), wc_price( $active_price ) );

? ? ? ? } else {

? ? ? ? ? ? $price = wc_price( $active_price );

? ? ? ? }

? ? }

? ? return $price;

}

它應該有效。



查看完整回答
反對 回復 2023-10-15
  • 1 回答
  • 0 關注
  • 107 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號