Woocommerce 3.0.0 Support

This commit is contained in:
Jason King 2017-04-14 20:24:14 +09:30 committed by GitHub
parent a9a7413fd1
commit 282489a2f0
1 changed files with 21 additions and 45 deletions

View File

@ -1,7 +1,7 @@
<?php
/**
* Single Product Thumbnails
*
* Updated for Understrap to maintain Woocommerce 3.0.3 compatability.
* This template can be overridden by copying it to yourtheme/woocommerce/single-product/product-thumbnails.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you
@ -13,59 +13,35 @@
* @see https://docs.woocommerce.com/document/template-structure/
* @author WooThemes
* @package WooCommerce/Templates
* @version 2.6.3
* @version 3.0.2
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
global $post, $product, $woocommerce;
global $post, $product;
$attachment_ids = $product->get_gallery_attachment_ids();
$attachment_ids = $product->get_gallery_image_ids();
if ( $attachment_ids ) {
$loop = 0;
$columns = apply_filters( 'woocommerce_product_thumbnails_columns', 3 );
?>
<div class="thumbnails <?php echo 'columns-' . $columns; ?>"><?php
if ( $attachment_ids && has_post_thumbnail() ) {
foreach ( $attachment_ids as $attachment_id ) {
$full_size_image = wp_get_attachment_image_src( $attachment_id, 'full' );
$thumbnail = wp_get_attachment_image_src( $attachment_id, 'shop_thumbnail' );
$image_title = get_post_field( 'post_excerpt', $attachment_id );
foreach ( $attachment_ids as $attachment_id ) {
$attributes = array(
'title' => $image_title,
'data-src' => $full_size_image[0],
'data-large_image' => $full_size_image[0],
'data-large_image_width' => $full_size_image[1],
'data-large_image_height' => $full_size_image[2],
);
$classes = array( 'zoom' );
$html = '<div data-thumb="' . esc_url( $thumbnail[0] ) . '" class="woocommerce-product-gallery__image"><a href="' . esc_url( $full_size_image[0] ) . '">';
$html .= wp_get_attachment_image( $attachment_id, 'shop_single', false, $attributes );
$html .= '</a></div>';
if ( $loop === 0 || $loop % $columns === 0 ) {
$classes[] = 'first';
}
if ( ( $loop + 1 ) % $columns === 0 ) {
$classes[] = 'last';
}
$image_class = implode( ' ', $classes );
$props = wc_get_product_attachment_props( $attachment_id, $post );
if ( ! $props['url'] ) {
continue;
}
echo apply_filters(
'woocommerce_single_product_image_thumbnail_html',
sprintf(
'<a href="%s" class="%s img-thumbnail" title="%s" data-rel="prettyPhoto[product-gallery]">%s</a>',
esc_url( $props['url'] ),
esc_attr( $image_class ),
esc_attr( $props['caption'] ),
wp_get_attachment_image( $attachment_id, apply_filters( 'single_product_small_thumbnail_size', 'shop_thumbnail' ), 0, $props )
),
$attachment_id,
$post->ID,
esc_attr( $image_class )
);
$loop++;
}
?></div>
<?php
echo apply_filters( 'woocommerce_single_product_image_thumbnail_html', $html, $attachment_id );
}
}