2017-07-20 20 views
0

すべての商品の「在庫切れ」メッセージを変更する方法を知っています。WooCommerceの単一商品の「在庫切れ」メッセージを変更

add_filter('woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2); 
function wcs_custom_get_availability($availability, $_product) { 

    // Change In Stock Text 
    if ($_product->is_in_stock()) { 
     $availability['availability'] = __('Available!', 'woocommerce'); 
    } 
    // Change Out of Stock Text 
    if (! $_product->is_in_stock()) { 
     $availability['availability'] = __('Sold Out', 'woocommerce'); 
    } 
    return $availability; 
} 

しかし、WooCommerceで単一の製品のメッセージを変更するにはどうすればよいですか?

答えて

0

特定の製品のIDを確認できます。

サンプル

add_filter('woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2); 
function wcs_custom_get_availability($availability, $_product) { 

    // Change In Stock Text 
    if ($_product->is_in_stock()) { 
     if ($_product->get_id() == 200) { 
      $availability['availability'] = __('Available for 2 days!', 'woocommerce'); 
     } 
     $availability['availability'] = __('Available!', 'woocommerce'); 
    } 

    // Change Out of Stock Text 
    if (! $_product->is_in_stock()) { 
     $availability['availability'] = __('Sold Out', 'woocommerce'); 
    } 
    return $availability; 
} 
0

あなたがis_single()機能を使用することができます。 この機能では、製品IDをパラメータとして使用できます。

あなたの製品のIDが「17」であると仮定します。

add_filter('woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2); 
function wcs_custom_get_availability($availability, $_product) { 

    // Change In Stock Text 
    if ($_product->is_in_stock()) { 
     $availability['availability'] = __('Available!', 'woocommerce'); 
    } 
    // Change Out of Stock Text 
    if (! $_product->is_in_stock()) { 
     $availability['availability'] = __('Sold Out', 'woocommerce'); 
    } 

    if ((! $_product->is_in_stock()) && (is_single('17'))) { 
     $availability['availability'] = __('Custom Messsage', 'woocommerce'); 
    } 

    return $availability; 
} 
関連する問題