Получить идентификатор корзины товаров на странице WooCommerce на выводе, отображать изображения продуктов

Я использую woocommerce на сайте, над которым я работаю, и хочу отображать текущий миниатюру продукта в верхней части страницы проверки, чтобы пользователь мог посмотреть, что он собирается купить.

Однако я не могу найти способ сделать это.

Самое близкое, что я получил, – это использовать WC::cart->get_cart() , но это выводит список всех продуктов.

Как я могу это достичь?

благодаря

Related of "Получить идентификатор корзины товаров на странице WooCommerce на выводе, отображать изображения продуктов"

Да, возможно написать специальную функцию.

Чтобы отобразить эти изображения в начале страницы проверки сразу после темы заголовка, используйте этот код:

 add_action('woocommerce_before_checkout_form', 'displays_cart_products_feature_image'); function displays_cart_products_feature_image() { foreach ( WC()->cart->get_cart() as $cart_item ) { $product = $cart_item['data']; if(!empty($product)){ // $image = wp_get_attachment_image_src( get_post_thumbnail_id( $product->ID ), 'single-post-thumbnail' ); echo $product->get_image(); // to display only the first product image uncomment the line bellow // break; } } } 

Этот фрагмент кода продолжается в файле functions.php вашей активной дочерней темы или темы

Вы можете изменить свойства изображений, добавив некоторые опции в функцию get_image () .

Этот код проверен и полностью работоспособен


ДРУГИЕ USAGES – вы также можете использовать его:

1) С помощью следующих других проверок WooCommerce (замена первой строки в коде фрагмента одним из них) :

• Перед информацией о клиенте:

 add_action('woocommerce_checkout_before_customer_details', 'displays_cart_products_feature_image'); 

• После получения информации о клиенте:

 add_action('woocommerce_checkout_after_customer_details', 'displays_cart_products_feature_image'); 

• Перед проверкой заказа:

 add_action('woocommerce_checkout_before_order_review', 'displays_cart_products_feature_image'); 

2) Непосредственно внутри ваших шаблонов woocommerce (этот код фрагмента распространяется на файл functions.php вашей активной дочерней темы или темы) :

 function displays_cart_products_feature_image() { foreach ( WC()->cart->get_cart() as $cart_item ) { $product = $cart_item['data']; if(!empty($product)){ // $image = wp_get_attachment_image_src( get_post_thumbnail_id( $product->ID ), 'single-post-thumbnail' ); echo $product->get_image(); // to display only the first product image uncomment the line bellow // break; } } } 

Затем вы просто вставьте один из них в файл шаблона :

  • внутри HTML-кода: <?php displays_cart_products_feature_image(); ?> <?php displays_cart_products_feature_image(); ?>
  • внутри PHP-кода: displays_cart_products_feature_image();

Справка:

  • Класс WC_Cart | Ссылка на код WooCommerce 2.6.x
  • Класс WC_Product | Ссылка на код WooCommerce 2.6.x
  • Структура шаблона + Переопределение шаблонов через тему