Я пытаюсь включить файл продукта вместе с именем и ценой сгруппированных продуктов. В настоящее время один родительский продукт включает в себя 20 или около того дочерних (сгруппированных) продуктов, и по умолчанию на странице отображается только выбор количества, название продукта, цена и кнопка добавления в корзину в нижней части списка. Все продукты перечислены в большой таблице один под другим, и я хочу включить изображение отдельного продукта для каждого отдельного продукта.
В настоящее время, редактируя файл продукта /single-product/add-to-cart/grouped.php, мне удалось отобразить его, чтобы отобразить небольшое изображение, но только основного родительского продукта, добавив следующее в DIV после название продукта php:
<div class="images"> <?php if ( has_post_thumbnail( $post_id ) ) { ?> <a itemprop="image" href="<?php echo wp_get_attachment_url( get_post_thumbnail_id( $post_id ) ); ?>" class="zoom" rel="thumbnails" title="<?php echo get_the_title( get_post_thumbnail_id( $post_id ) ); ?>"><?php echo get_the_post_thumbnail( $post_id, apply_filters( 'grouped_product_large_thumbnail_size', 'shop_thumbnail' ), array( 'title' => get_the_title( get_post_thumbnail_id( $post_id ) ), ) ); ?></a> <?php } ?> </div>
Я знаю, что этот код копируется только из образа продукта в комплекте, но он самый близкий. Вы можете увидеть пример того, что я имею в виду здесь:
http://hallmark.digitalstorm.co.uk/product/luxor-custom-built-arrangement/
Любая помощь будет действительно оценена, так как я знаю, что я должен быть очень близок.
Вот код, который вы ищете:
add_action( 'woocommerce_grouped_product_list_before_price', 'woocommerce_grouped_product_thumbnail' ); function woocommerce_grouped_product_thumbnail( $product ) { $image_size = array( 20, 20 ); // array( width, height ) image size in pixel $attachment_id = get_post_meta( $product->id, '_thumbnail_id', true ); ?> <td class="label"> <?php echo wp_get_attachment_image( $attachment_id, $image_size ); ?> </td> <?php }
Надеюсь, это будет полезно.
Фантастический код от @Ratnakar – Хранить приложения
Для тех, кто пытается добавить ссылку на продукт, я добавил «ссылку» на изображение, чтобы оно получилось. Изображение + Ссылка на продукт
$link = get_the_permalink($product->id);
а также
<a href="<?php echo $link; ?>" > <?php echo wp_get_attachment_image( $attachment_id, $image_size ); ?> </a>
Финал:
add_action( 'woocommerce_grouped_product_list_before_price', 'woocommerce_grouped_product_thumbnail' ); function woocommerce_grouped_product_thumbnail( $product ) { $image_size = array( 100, 100 ); // array( width, height ) image size in pixel $attachment_id = get_post_meta( $product->id, '_thumbnail_id', true ); $link = get_the_permalink($product->id); ?> <td class="label"> <a href="<?php echo $link; ?>" > <?php echo wp_get_attachment_image( $attachment_id, $image_size ); ?> </a> </td> <?php }