Woocommerce在产品缩略图上方显示产品类别缩略图

时间:2020-06-20 13:07:06

标签: php wordpress woocommerce

我想在商店页面的产品缩略图上方显示类别缩略图。我尝试使用此代码,但是它不起作用。

请帮助我,我需要完成此操作。任何帮助将不胜感激。谢谢。

        /**
     * Display product category thumbnail.
     *
     * @param mixed $product_category Category term Id, term name or term slug.
     */
    <?php
$thumbnail_id = get_term_meta( $cat->term_id, 'thumbnail_bid', true );
$image_url = wp_get_attachment_url( $thumbnail_id ); ?>

1 个答案:

答案 0 :(得分:0)

gcc -o erl -std=gnu99 -Wall erl.c
  1. 您必须使用钩子/** * Display product category thumbnail. * */ add_action('woocommerce_before_shop_loop_item_title', 'display_product_category_thumbnail', 20); function display_product_category_thumbnail() { global $product; $productFirstCategory = reset(get_the_terms($product->get_id(), 'product_cat')); $small_thumb_size = 'woocommerce_thumbnail'; $dimensions = wc_get_image_size($small_thumb_size); if ($thumbnail_id = get_term_meta($productFirstCategory->term_id, 'thumbnail_id', true)) { $image = wp_get_attachment_image_src($thumbnail_id, $small_thumb_size); if (is_array($image)) { $image = reset($image); } $image_srcset = function_exists('wp_get_attachment_image_srcset') ? wp_get_attachment_image_srcset($thumbnail_id, $small_thumb_size) : false; $image_sizes = function_exists('wp_get_attachment_image_sizes') ? wp_get_attachment_image_sizes($thumbnail_id, $small_thumb_size) : false; } else { $image = wc_placeholder_img_src(); $image_srcset = false; $image_sizes = false; } if ($image) { $src_set = ''; if ($image_srcset && $image_sizes) { $src_set = '" srcset="' . esc_attr($image_srcset) . '" sizes="' . esc_attr($image_sizes); } echo '<img src="' . esc_url($image) . '" alt="' . esc_attr($productFirstCategory->name) . '" width="' . esc_attr($dimensions['width']) . '" height="' . esc_attr($dimensions['height']) . $src_set . '" />'; } } ,该钩子会将您的函数钩在产品标题之前执行。
  2. 全局变量woocommerce_before_shop_loop_item_title保存当前循环的产品对象。
  3. 获取当前产品ID,并将其传递给WP函数$product,以数组形式获取与该产品相关的所有术语,并使用PHP函数get_the_terms仅检索第一个术语对象并进行分配到变量reset
  4. WooCommerce函数$productFirstCategory将维度详细信息检索为数组
  5. 下一个wc_get_image_size用于分配该产品类别图片或默认图片
  6. 最后的if-else block用于输出标题前的图像

Product and category image