【发布时间】:2015-06-13 00:04:02
【问题描述】:
我是第一次与 WC 合作,我正在用这个追逐我的尾巴。
在“订单”页面中,客户可以看到他们所做的所有购买,该数组显示了有关订单的一些基本信息。 我还需要展示客户购买的产品的图片。
订单似乎是自定义帖子,但我如何获得图像产品?
我意识到这个问题太模糊了。任何指针都会有很大的帮助。
【问题讨论】:
标签: php wordpress woocommerce
我是第一次与 WC 合作,我正在用这个追逐我的尾巴。
在“订单”页面中,客户可以看到他们所做的所有购买,该数组显示了有关订单的一些基本信息。 我还需要展示客户购买的产品的图片。
订单似乎是自定义帖子,但我如何获得图像产品?
我意识到这个问题太模糊了。任何指针都会有很大的帮助。
【问题讨论】:
标签: php wordpress woocommerce
订单是shop_order 类型的自定义帖子类型。订单本身没有缩略图,但订单有已购买产品的列表,并且每个产品都可能有缩略图。
您可以在order-details.php 模板中查看如何获取与任何订单对象关联的所有商品/产品...$order->get_items()
这将返回存储在不同数据库表中的数据数组。使用$item 变量,您可以获得原始产品,并且您可以在链接模板中看到发送到order-details-item.php 的$product 变量定义为order->get_product_from_item( $item )。
无论如何,一旦您拥有$product 对象,您就可以使用$product->get_image() 来检索产品的图像。
作为一个简化示例,这将显示在订单 999 中购买的所有产品的缩略图。
$order_id = 999;
$order = wc_get_order( $order_id );
foreach( $order->get_items() as $item_id => $item ) {
$product = apply_filters( 'woocommerce_order_item_product', $order->get_product_from_item( $item ), $item );
echo $product->get_image();
}
在你的循环中嵌套这个:
foreach ( $customer_orders as $customer_order ) {
$order = wc_get_order();
$order->populate( $customer_order );
foreach( $order->get_items() as $item_id => $item ) {
$product' = apply_filters( 'woocommerce_order_item_product', $order->get_product_from_item( $item ), $item );
echo $product->get_image();
}
}
虽然通常情况下,order-details.php 模板应该包含指向每个订单概览的链接。
【讨论】:
foreach ( $customer_orders as $customer_order ) { $order = wc_get_order(); $order->populate( $customer_order ); $item_count = $order->get_item_count(); 如何将它与您的代码结合起来?
foreach 循环。
$product' = 我是 php 新手,但您有一个引号,它返回一个错误。一旦引用被删除,错误也会被删除。