当前位置: 首页 > 知识库问答 >
问题:

WooCommerce显示/获取产品缩略图

席波娃
2023-03-14

我正在尝试在一个自定义主题中实现wooCommerce,我正在基于bootstrap框架构建该主题(因为我对事物的外观很挑剔),所以我正在尝试重新定位wooCommerce产品缩略图库图像。我知道wooCommerce中提供的各种函数和钩子,如wc-template-hooks.php中列出的函数和钩子,它们工作得非常好,但在我的特殊情况下除外。我使用“主内容之前的woocommerce\u”主内容之后的woocommerce\u钩子将产品信息包装在我的引导框架中,就像这样。。。

...
<div class="row">
  <div class="col-md-1"> *where I want my gallery images to go* </div>
  <div class="col-md-7 *woocommerce-main"> where my woocommerce product is loaded* </div>
  <div class="col-md-4"> *some other product info is loaded here* </div>
</div>...

我遇到的是,在调用/加载product部分(这当然很有意义)之前,我似乎无法使用任何product挂钩或函数,但我需要能够将product gallery图像加载到第一列“col-md-1”。。。所以我的问题是。。。如何在所有内容加载完成之前获取产品库图像,或者如何在所有内容加载完成后追溯处理进入第一列的内容?

谢谢

编辑:在我的functions.php中完成WooCommerce钩子

<?php
remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10);
remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10);
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_product_data_tabs', 10 );
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
remove_action( 'woocommerce_product_thumbnails', 'woocommerce_show_product_thumbnails', 20 );

add_action('woocommerce_before_main_content', 'underwire_wrapper_start', 10);
add_action('woocommerce_after_main_content', 'underwire_wrapper_end', 10);

function underwire_wrapper_start() {
  echo '<div class="row">';
  if ( is_product() ) {
      echo '<div class="col-md-1">';
      echo woocommerce_get_product_thumbnail();
      //woocommerce_show_product_thumbnails();
    echo '</div>';
    echo '<div class="col-md-7 woocommerce-main">';
  } else {
    echo '<div class="col-sm-12 woocommerce-main">';
  }
}

function underwire_wrapper_end() {
  if ( is_product() ) {
    echo '</div> <!-- /.woocommerce-main --><div class="col-md-4">';
    woocommerce_output_product_data_tabs();
    //woocommerce_output_related_products();
    echo '</div></div>';
  } else {
    echo '</div> <!-- /.woocommerce-main --></div>';
  }
}
?>

共有1个答案

马弘和
2023-03-14

2020年答案:这是一篇旧文章,但是对于任何阅读这篇文章的人来说,我相信你可以钩住产品页面的任何部分,然后在你的自定义钩子函数中,使用这样的东西来访问照片标识,使用$Products对象:

// priority number at the end can be whatever you want
add_action('action_you_want_to_hook_into', 'your_custom_function', 10);

function your_custom_function() {
    global $product;
    image_ids[] = $product->get_gallery_image_ids();
    // do something with image_ids[]
}

希望这能帮助任何在这里跌跌撞撞的人!

下面是一个有用的函数列表,你可以在$producs上调用它

 类似资料:
  • 我的吴宇森商店有一个奇怪的问题。最新更新后,产品商店缩略图开始以不同寻常的方式显示。有些图像显示良好,但其中的一些,显示在全尺寸。我想让它所有的图像显示这样: 显示问题的图像 “良好”产品的尺寸为:251px 304px。这也是我的Woocommerce缩略图配置: woo配置 我尝试将其设置为CSS: 任何帮助,如何显示所有图像的罚款?这是链接表单商店。

  • 我的购物车页面有问题。我遇到的问题是产品缩略图图像被裁剪,并且正在切断我的图像。 我转到产品显示设置并调整了缩略图大小,但缩略图图像仍然太小且被裁剪。 购物车页面图像 我想知道如何解决这个问题,有人能帮忙吗? 我还想了解如何将购物车页面上的产品图像更改为不同的图片,而不影响网站前端的产品图像。

  • 我想为我的一些产品显示不同的缩略图,如果它们出现在特定类别中。 我已经从特定类别中删除了当前的缩略图,我正在使用一个自定义字段为我要替换的产品提取新的缩略图,这非常有效。然而,当我尝试调用剩余产品的正常缩略图时,它不起作用-有什么想法吗?

  • 我对Woocomece的3.3.5版本有一个问题,特别是在product-thumbnais.php页面。 场景:我们在产品图库中有一个特色产品图像和另外5-6个图像,它们明显地显示为主图像下的产品缩略图。 现在缩略图只是堆叠在一起,似乎没有办法让这些缩略图显示在单行旋转木马中,导航箭头滚动旋转木马。 假设我想在任何给定的时间显示4个缩略图,然后单击导航箭头滚动缩略图,就像本页上的flexnav演

  • 我正在制作我的第一个主题,感谢Loop和WooCommerce的SDK提供的所有帮助,一切都进展得非常快。然后今天我花了一整天的时间没能做像展示图片这样简单的事情。。。经过一整天的努力,我学到的唯一一件事是,WP似乎无法提供获取类别图像的手段,许多人已经问了这个问题很多年了,但我仍然找不到一种方法来真正做到这一点……:( 我想做的是在我的商店上方创建一个滑块,显示精选商店类别的图像。我希望能够输入

  • 我目前正在使用以下代码获取WooCommerce产品类别: 当前显示所有类别,但我希望仅显示子类别。 例如,如果您在“类别1”页面上,则该页面应仅显示该类别中的所有子级。 我在这里看过很多例子,但都找不到适合我需要的东西。