Я использую следующий код, чтобы захватить изображение каждого варианта для определенного продукта:
$product = new WC_Product_Variable( $product_id ); $variations = $product->get_available_variations(); foreach ( $variations as $variation ) { echo "<img src=" . $variation['image']['url'] .">"; }
Это возвращает изображение полного размера.
Может ли кто-нибудь сказать мне, как я изменил бы это, чтобы вернуть URL-адрес «thumbnail»? (или любого другого размера)
Я уверен, что это довольно простое изменение, но я просто не могу понять это.
Используйте параметр thumb_src вместо url.
$product = new WC_Product_Variable( $product_id ); $variations = $product->get_available_variations(); foreach ( $variations as $variation ) { echo "<img src=" . $variation['image']['thumb_src'] .">"; }
Если вы знаете идентификатор изменения продукта, вы можете сделать
// find out $variation_id, it's different from product_id $variation = new WC_Product_Variation( $variation_id ); $image_tag = $variation->get_image(); // The below is the whole image tag including <img> and some classes that will help customize it. echo $image_tag;
См. Соответствующие документы, найденные в справочнике Woocommerce для класса WC_product_variation и класса WC_Product . Функция get_image () фактически унаследована от WC_Product, но вы можете использовать ее в любом классе.