Показать изображение продукта на странице «Заказы» – Woocommerce

Я работаю с туалетом в первый раз, и я преследую свой хвост с этим.

На странице «Заказы», ​​где клиенты могут видеть все сделанные покупки, массив показывает некоторую базовую информацию о заказе. Мне нужно также показать изображение продукта, купленного покупателем.

Заказы, похоже, являются пользовательскими сообщениями, но как я могу получить продукт изображения?

Я понимаю, что вопрос слишком расплывчатый. Любые указатели были бы большой помощью.

Solutions Collecting From Web of "Показать изображение продукта на странице «Заказы» – Woocommerce"

Заказы – это пользовательские типы сообщений типа shop_order . Заказы не имеют самих эскизов, но заказы имеют список продуктов, которые были куплены, и каждый продукт имеет возможность эскиза.

В шаблоне order-details.php вы можете увидеть, как получить все элементы / продукты, связанные с любым объектом заказа … $order->get_items()

Это возвращает массив данных, который хранится в отдельных таблицах базы данных. С переменной $item вы можете получить исходный продукт, и вы можете видеть в связанном шаблоне, что переменная $product , которая отправляется в order-details-item.php , определяется как 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 должен иметь ссылки на общий обзор каждого индивидуального заказа.