我要在Woocommerce建一个网店。在单个产品页面中,我删除了功能图像(删除了调用它的代码),并使用以下代码从库中删除了第一个大尺寸的图像:
<?php
$imgid = $product->get_gallery_attachment_ids();
?>
<a href="<?php echo wp_get_attachment_url( $imgid[0] ); ?>"
class="woocommerce-main-image zoom first"
rel="lightbox[product-gallery]">
<img src="<?php echo wp_get_attachment_url( $imgid[0] ); ?>" alt="">
</a>在此之后,缩略图被称为:
<?php do_action( 'woocommerce_product_thumbnails' ); ?>由于数组中的第一个图像已经显示得很大,所以我设法将它从缩略图列表中删除,如下所示:
<script>
jQuery('.thumbnails.columns-3 a:first-child').hide()
</script>我现在唯一的问题是,第一张图片仍然会出现两次在光盒,因为它仍然在画廊2次。
我如何从Lightbox的数组中删除它,而不能从图库的数组中删除它?
我尝试了以下几种方法,但都犯了错误:
// define the woocommerce_product_thumbnails callback
function action_woocommerce_product_thumbnails( $woocommerce_show_product_thumbnails, $number )
{
$array = $product->get_gallery_attachment_ids();
$size = count($array);
$result = array();
for ($i = 0; $i < $size; $i += 2) {
$result[] = $array[$i];
}
var_dump($result);
}
// add the action
add_action( 'woocommerce_product_thumbnails', 'action_woocommerce_product_thumbnails', 10, 2 );
// add the action
add_action( 'woocommerce_product_thumbnails', 'action_woocommerce_product_thumbnails', 10, 2 );关于下一步该做什么有什么建议吗?
发布于 2015-08-05 18:31:23
这并不能解决这里的确切问题(在问题:here的改进版本中提供了两个解决方案),但是这里有一个如何过滤woocommerce_product_gallery_attachment_ids的示例,供以后参考
add_filter( 'woocommerce_product_gallery_attachment_ids', 'so_31818331_filter_gallery', 10, 2 );
function so_31818331_filter_gallery( $ids, $product ){
// remove image attachment id=99 from all galleries
if( in_array( 99, $ids ) ){
unset( $ids['99'] );
}
return $ids;
}https://stackoverflow.com/questions/31818331
复制相似问题