کوئری برای نمایش محصولات ساده و متغیر در ووکامرس

فروشگاه های اینترنتی زیادی هستن  که مشغول فروش محصولات فیزیکی و مجازی هستند و برای راه اندازی  از ووکامرس و افزونه های مرتبط با این افزونه استفاده کردند. به جرات میشه گفت یکی از بهترین و کامل ترین و البته پیچیده ترین افزونه های فرشگاه ساز وردپرس هست که در ادامه تعداد از کدهای مورد نیاز و مفید اون رو مرور می کنیم . اگر شما هم کدی دارید که فکر می کنید حتما باید در این لیست بود در قسمت کامنت ها برای من ارسال کنید

 

woocommerc کوئری ووکامرس

woocommerc کوئری ووکامرس

یک کوئری ساده :

<?php
$params = array('posts_per_page' => 5); // (1)
$wc_query = new WP_Query($params); // (2)
?>
<?php if ($wc_query->have_posts()) : // (3) ?>
<?php while ($wc_query->have_posts()) : // (4)
                $wc_query->the_post(); // (4.1) ?>
<?php the_title(); // (4.2) ?>
<?php endwhile; ?>
<?php wp_reset_postdata(); // (5) ?>
<?php else:  ?>
<p>
     <?php _e( 'No Products' ); // (6) ?>
</p>
<?php endif; ?>

 

 

 

نمایش محصولات ساده و متغیر که دارای قیمت فروش ویژه هستند :

$params = array(
'posts_per_page' => 5, 
'post_type' => array('product', 'product_variation'),
'meta_key' => '_sale_price',
'meta_value' => 0,
'meta_compare' => '>='
'meta_type' => 'NUMERIC'
);

 

نمایش محصولات ساده و متغیر با قیمت کمتر از 5000 واحد:

$params = array(
        'posts_per_page' => 100, 
        'post_type' => array('product', 'product_variation'),
        'meta_query' => array(
            'relation' => 'OR',
            array(
                'key' => '_price',
                'value' => 5,
                'compare' => '<=',
                'type' => 'NUMERIC'
            ),
            array(
                'key' => '_sales_price',
                'value' => 5,
                'compare' => '<=',
                'type' => 'NUMERIC'
            )
        )
);

 

نمایش محصولات ساده و متغیر با قیمت عادی و ویژه که در یک محدوده قیمتی خاص قرار دارند ( بین 10 تا 15 هزار واحد) :

$params = array(
        'posts_per_page' => 5, 
        'post_type' => array('product', 'product_variation'),
        'meta_query' => array(
            'relation' => 'OR',
            array(
                array(
                    'key' => '_price',
                    'value' => 10000,
                    'compare' => '>=',
                    'type' => 'NUMERIC'
                ),
                array(
                    'key' => '_price',
                    'value' => 15000,
                    'compare' => '<=',
                    'type' => 'NUMERIC'
                )
            ),
            array(
                array(
                    'key' => '_sale_price',
                    'value' => 10000,
                    'compare' => '>=',
                    'type' => 'NUMERIC'
                ),
                array(
                    'key' => '_sale_price',
                    'value' => 15000,
                    'compare' => '<=',
                    'type' => 'NUMERIC'
                )
            )
        )
);

نمایش محصولات موجود در انبار که قیمت اونها از 5000 واحد کمتر باشه

$params = array(
        'posts_per_page' => 5, 
        'post_type' => array('product', 'product_variation'),
        'meta_query' => array(
            array(
                'key' => '_price',
                'value' => 5000,
                'compare' => '<',
                'type' => 'NUMERIC'
            ),
            array(
                'key' => '_stock_status',
                'value' => 'instock'
            )
        )
);

 

نمایش محصولات ساده و متغیر که تعداد موجودی در انبار اونها بشتر از 5 تا باشه

$params = array(
         'post_type' => array('product', 'product_variation'),
        'meta_query' => array(
            array(
                'key' => '_stock',
                'value' => 5,
                'compare' => '&gt;',
                'type' => 'NUMERIC'
            )
        )
);

نمایش واریته های یک محصول خاص ( برای مثال با آی دی 15)

$params = array(
        'posts_per_page' => 5, 
        'post_type' => array('product_variation'),
        'post_parent' => 15
);

نمایش واریته های دو یا چند محصول خاص ( با آی دی های 25  و 15 )

$params = array(
        'posts_per_page' => 5, 
        'post_type' => array('product_variation'),
        'post_parent' => array(15, 25)
);
  1. اولین نفری باشید که دیدگاه خود را ثبت می کند!
  1. No trackbacks yet.
« نمایش اطلاعات یک سفارش بر اساس آی دی
نمایش واریته های یک محصول متغییر در ووکامرس »