我正在使用以下代码来获取特定产品的每个变体的图像:
$product = new WC_Product_Variable( $product_id );
$variations = $product->get_available_variations();
foreach ( $variations as $variation ) {
echo "<img src=" . $variation['image']['url'] .">";
}
这将返回完整尺寸的图像。
任何人都可以告诉我如何修改此内容以返回“缩略图”网址(或任何其他尺寸)
我确信这是一个相当简单的改变,但我无法弄明白。
答案 0 :(得分:3)
使用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'] .">";
}
答案 1 :(得分:0)
如果您知道产品变体ID,则可以
// 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;
请参阅我在WC_product_variation课程和WC_Product课程的Woocommerce参考资料中找到的相关文档。函数get_image()实际上是从WC_Product继承的,但您可以在任一类中使用它。
答案 2 :(得分:0)
自WooCommerce版本3.0.0起,您可以获得的变体图片ID为:
$image_id = $variation->get_image_id();
这将返回变体图片ID(如果有),否则,将返回主产品图片ID。可以在产品后端找到一个变化图片,如下图所示:
然后您可以使用此图像ID来获取您的变体或产品缩略图的URL,如下所示:
$image_array = wp_get_attachment_image_src($image_id, 'thumbnail');
$image_src = $image[0];
该代码段已经过测试并且可以正常工作。
答案 3 :(得分:-1)
现在,它以小,中和大尺寸显示红色的缩略图。三个重复的缩略图。