将产品库中的随机图像显示为Woocommerce商店上的主要产品图像

时间:2019-09-26 01:40:44

标签: php wordpress woocommerce

我有一个woocommerce可变产品,在产品库中显示了多个产品图像。还为商品设置了主要产品图片。

我实质上希望商店循环/归档页面从产品库中加载随机图像,以在加载时显示为主要产品图像。

任何对正确方向的帮助将不胜感激。

我试图找到类似的问题,并在类别级别找到了一个问题,但是它不能满足我在产品级别的要求。也没有任何现有的插件可以实现此目的。

1 个答案:

答案 0 :(得分:1)

在活动主题的functions.php中添加以下代码段-

function modify_woocommerce_product_get_image( $image, $product, $size, $attr ) {
    $image_ids = $product->get_gallery_image_ids();
    if( $image_ids ) {
        $image_ids = array_merge($image_ids, array($product->get_image_id()));
        $key = array_rand($image_ids);
        $id = $image_ids[$key];
        $image = wp_get_attachment_image( $id, $size, false, $attr );
    }
    return $image;
}
add_filter( 'woocommerce_product_get_image', 'modify_woocommerce_product_get_image', 99, 4 );