Я использую woocommerce на сайте, над которым я работаю, и хочу отображать текущий миниатюру продукта в верхней части страницы проверки, чтобы пользователь мог посмотреть, что он собирается купить.
Однако я не могу найти способ сделать это.
Самое близкое, что я получил, – это использовать WC::cart->get_cart()
, но это выводит список всех продуктов.
Как я могу это достичь?
благодаря
Да, возможно написать специальную функцию.
Чтобы отобразить эти изображения в начале страницы проверки сразу после темы заголовка, используйте этот код:
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; } } }
Затем вы просто вставьте один из них в файл шаблона :
<?php displays_cart_products_feature_image(); ?>
<?php displays_cart_products_feature_image(); ?>
displays_cart_products_feature_image();
Справка: