2013-09-26 149 views
3

我正在爲WooCommerce創建一個插件來修改Checkout頁面。我想做一些基於用戶購物車的條件過濾器。有沒有辦法查看購物車中的物品,並確定是否有任何物品不可下載/虛擬?WooCommerce結賬

到目前爲止,我有一個過濾器,並在過濾器中我想隱藏地址字段。這很好,但現在我想使它成爲有條件的,並且只有在包含不可下載的產品時才隱藏地址字段。由於

// Our hooked in function - $fields is passed via the filter! 
function custom_override_checkout_fields($fields) { 
    $hasPhysicalProduct = 0; 
    if (sizeof($woocommerce->cart->get_cart()) > 0) { 
     foreach ($woocommerce->cart->get_cart() as $cart_item_key => $values) { 
      $_product = $values['data']; 
      if (SOMEHOW CHECK IF THE PRODUCT IS DOWNLOADABLE) { 
       $hasPhysicalProduct = 1; 
      } 
     } 
    } 
+0

不是一個真正的編程問題作爲詢問信息對於建議 – RiggsFolly

+0

嗨裏格斯 - 對不起,我是新來的:)我添加了一些更多的信息到我的文章。提前致謝。 –

+0

什麼是功能,總體來說你想要實現什麼修改,像這樣? https://www.fmeaddons.com/woocommerce-plugins-extensions/additional-checkout-fields.html – user960971

回答

6

$_product是WC_Product的一個實例,所以你應該能夠做到這一點:

if ($_product.is_downloadable()) { 
    $hasPhysicalProduct = 1; 
} 

的WooCommerce文檔有大約WC_Product class members