2014-02-17 103 views
7

我正在嘗試創建一個已添加到購物車的商品的簡單項目列表,該列表稍後將通過重力表單字段傳遞。以下是我想出了這麼遠:WooCommerce - 在產品頁面以外列出購物車商品名稱

<?php global $woocommerce; 

     $items = $woocommerce->cart->get_cart(); 

     foreach($items as $item => $product_id) { ?> 

      <li><?php echo $item; ?></li> 

     <?php } ?> 

我有2個項目添加到購物車,並得到的結果是:

  • 747579165776fe1ba349237464ae0eed
  • f06a642b52d91adfa0168b737bd60db9

但是,我試圖抓住產品的標題而不是關鍵。

回答

18

你需要做的是這樣的:

<?php global $woocommerce; 

    $items = $woocommerce->cart->get_cart(); 
    foreach($items as $item => $values) { ?> 
     <? // print_r($item); ?> 
     <? $_product = $values['data']->post; ?> 
     <? echo $_product->post_title; ?> 
    <?php } ?> 

您可以訪問,然後到任何崗位價值,POST_TITLE,POST_DATE,ID等 取消註釋//的print_r($項目);看看我的意思。 你也可以使用其他數據改變一下部分:$ _product = $ values ['data'] - > post; 例如訪問產品ID,而不是帖子ID,功能的foreach的內部改成這樣:

$_product = $values['data']; 
echo $_product->ID; 

打印$ _產品以查看可用值的其餘部分。

事實上,總是做一個print_r來查看數組中的內容。

就是這樣。

+1

當我回顯'$ _product-> ID'時,它顯示所有產品ID,我怎樣才能得到它們的最後一個,例如這裏是返回的值'1297,1694,1297,3911,4999,'如何獲得4999? – aidadev

相關問題