【问题标题】:Check to see if WooCommerce Category Image exist检查 WooCommerce 类别图像是否存在
【发布时间】:2014-03-11 07:09:01
【问题描述】:

有没有办法检查 WooCommerce 中是否存在类别缩略图?类似于has_post_thumbnail() 的东西?我正在尝试创建条件,如果可用,它将显示类别图像,如果没有,它将显示 WooCommerce 占位符。

代码已更新,下面的答案供任何需要它的人使用:

<?php
            $args = array(
                'number'     => $number,
                'orderby'    => $orderby,
                'order'      => $order,
                'hide_empty' => $hide_empty,
                'include'    => $ids,
                'parent'    => 0
            );
            $product_categories = get_terms( 'product_cat', $args );
            foreach( $product_categories as $cat ) {
                $category_thumbnail = get_woocommerce_term_meta($cat->term_id, 'thumbnail_id', true);
                $image = wp_get_attachment_url($category_thumbnail);

                if ($image) {
                    $image_decider = $image;
                } else {

                    $image_decider = woocommerce_placeholder_img_src();
                }

                echo '
                <div class="col-md-4">
                    <a href="'. get_site_url().'/product-category/'. $cat->slug .'">
                        '. $cat->name . '<img src="'.$image_decider.'" width="350"   height="350" alt="'. $cat->name . '-category-image"></a>
                </div>
                ';
            }
        ?>

【问题讨论】:

  • 这将是helpthis?
  • 嗨,Rahil,我可以毫无问题地提取类别图像。我想我遇到的问题是设置一个条件来检查类别图像是否存在(即我上传了我自己的),如果不加载 woocommerce 占位符。我已经用代码 sn-p 更新了问题。

标签: wordpress woocommerce


【解决方案1】:

您可以简单地使用if () {...} else { .. } 条件来判断图像是否存在。

简单使用:

if ($image) {
    $image_decider = $image;
} else {
    $image_decider = 'http://www.example.com/wp-content/themes/your-theme/images/placeholder.png';
}

echo $image_decider; //Image Or Placeholder

完整代码:

<?php
    $args = array(
       'number'     => $number,
       'orderby'    => $orderby,
       'order'      => $order,
       'hide_empty' => $hide_empty,
       'include'    => $ids,
       'parent'    => 0
    );
            $product_categories = get_terms( 'product_cat', $args );
            foreach( $product_categories as $cat ) {
                $category_thumbnail = get_woocommerce_term_meta($cat->term_id, 'thumbnail_id', true);
                $image = wp_get_attachment_url($category_thumbnail);

                //Code to paste
                if ($image) {
                    $image_decider = $image;
                } else {
                    //Your placeholder image URI
                    $image_decider = 'http://www.example.com/wp-content/themes/your-theme/images/placeholder.png';
                }
                //Code to paste

                echo '
                <div class="col-md-4">
                    <a href="'. get_site_url().'/product-category/'. $cat->slug .'">
                        '. $cat->name . '<img src="'.$image_decider.'" width="350" height="150"
 alt="'. $cat->name . '-category-image"></a>
                </div>
                ';
            }
 ?>

【讨论】:

  • 该死,你让我觉得自己很笨!我完全想多了 - 非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多