get_type() === 'variable' && ! $blocksy_current_variation) { $maybe_current_variation = blocksy_retrieve_product_default_variation( $product ); if ($maybe_current_variation) { $blocksy_current_variation = $maybe_current_variation; } } $is_single = is_single(); if (isset($forced_single) && $forced_single) { $is_single = true; } if (! isset($gallery_images)) { $thumb_id = apply_filters( 'woocommerce_product_get_image_id', get_post_thumbnail_id($product->get_id()), $product ); $thumb_id = get_post_thumbnail_id($product->get_id()); $gallery_images = $product->get_gallery_image_ids(); if ($thumb_id) { array_unshift($gallery_images, intval($thumb_id)); } else { $gallery_images = [null]; } } $product_view_attr = [ 'class' => 'woocommerce-product-gallery' ]; $active_index = 1; if ($blocksy_current_variation) { $variation_main_image = $blocksy_current_variation->get_image_id(); $variation_values = get_post_meta( $blocksy_current_variation->get_id(), 'blocksy_post_meta_options' ); if (empty($variation_values)) { $variation_values = [[]]; } $variation_values = $variation_values[0]; $variation_gallery_images = blocksy_akg('images', $variation_values, []); $gallery_source = blocksy_akg('gallery_source', $variation_values, 'default'); if ($gallery_source === 'default') { if (! in_array($variation_main_image, $gallery_images)) { $gallery_images[0] = $variation_main_image; } else { $active_index = array_search( $variation_main_image, $gallery_images ) + 1; } } else { $gallery_images = [$variation_main_image]; foreach ($variation_gallery_images as $variation_gallery_image) { $gallery_images[] = $variation_gallery_image['attachment_id']; } } $product_view_attr[ 'data-current-variation' ] = $blocksy_current_variation->get_id(); } $gallery_images = apply_filters( 'blocksy:woocommerce:product-view:product_gallery_images', $gallery_images ); $ratio = '3/4'; $single_ratio = blocksy_get_theme_mod('product_gallery_ratio', '3/4'); $has_lazy_load_single_product_image = blocksy_get_theme_mod( 'has_lazy_load_single_product_image', 'yes' ) === 'yes'; global $blocksy_is_quick_view; if (! $blocksy_is_quick_view) { $product_view_attr = apply_filters( 'blocksy:woocommerce:product-view:attr', $product_view_attr ); } ob_start(); $badges = []; $location_key = $blocksy_is_quick_view ? 'archive' : 'single'; if ($product->is_in_stock()) { $has_sale_badge = blocksy_get_theme_mod('has_sale_badge', [ 'single' => true, 'archive' => true ]); if ($has_sale_badge[$location_key]) { ob_start(); woocommerce_show_product_sale_flash(); $badges[] = ob_get_clean(); } } else { $maybe_stock_badge = blocksy_get_woo_out_of_stock_badge([ 'location' => $location_key ]); if ($maybe_stock_badge) { $badges[] = $maybe_stock_badge; } } do_action('blocksy:woocommerce:product-gallery:before'); echo ''; do_action('blocksy:woocommerce:product-gallery:after'); $result_html = ob_get_clean(); $prefix = blocksy_manager()->screen->get_prefix(); if (is_customize_preview()) { $product_view_attr['data-shortcut'] = 'border:outside'; $product_view_attr['data-shortcut-location'] = blocksy_first_level_deep_link($prefix) . ':woo_product_gallery'; } if (! empty($result_html)) { $result_html = blocksy_html_tag( 'div', $product_view_attr, $result_html ); echo apply_filters( 'woocommerce_single_product_image_thumbnail_html', $result_html, $gallery_images[0] ); }