2014-02-17 32 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

相关问题