আমি সন্দেহ করি যে প্রধান সমস্যাটি হ'ল আপনার উচিত WP_Query
বরং এটি ব্যবহার করা get_posts()
। পরবর্তীতে ডিফল্টরূপে কেবল post
পণ্য নয় পোস্ট পোস্ট টাইপের সাথে আইটেমগুলি ফেরত দেয় ,
সুতরাং 26 আইডি সহ একটি বিভাগ দেওয়া হয়েছে, নিম্নলিখিত কোডটি তার পণ্যগুলি (WooCommerce 3+) ফিরিয়ে দেবে:
$args = array(
'post_type' => 'product',
'post_status' => 'publish',
'ignore_sticky_posts' => 1,
'posts_per_page' => '12',
'tax_query' => array(
array(
'taxonomy' => 'product_cat',
'field' => 'term_id', //This is optional, as it defaults to 'term_id'
'terms' => 26,
'operator' => 'IN' // Possible values are 'IN', 'NOT IN', 'AND'.
),
array(
'taxonomy' => 'product_visibility',
'field' => 'slug',
'terms' => 'exclude-from-catalog', // Possibly 'exclude-from-search' too
'operator' => 'NOT IN'
)
)
);
$products = new WP_Query($args);
var_dump($products);
WooCommerce এর পূর্ববর্তী সংস্করণগুলিতে দৃশ্যমানতা একটি মেটা ক্ষেত্র হিসাবে সঞ্চিত ছিল, সুতরাং কোডটি হবে:
$args = array(
'post_type' => 'product',
'post_status' => 'publish',
'ignore_sticky_posts' => 1,
'posts_per_page' => '12',
'meta_query' => array(
array(
'key' => '_visibility',
'value' => array('catalog', 'visible'),
'compare' => 'IN'
)
),
'tax_query' => array(
array(
'taxonomy' => 'product_cat',
'field' => 'term_id', //This is optional, as it defaults to 'term_id'
'terms' => 26,
'operator' => 'IN' // Possible values are 'IN', 'NOT IN', 'AND'.
)
)
);
$products = new WP_Query($args);
var_dump($products);
এখানে আমরা কেবল প্রতি পৃষ্ঠায় দৃশ্যমান পণ্যগুলি ফিরিয়ে দিচ্ছি 12
বিভাগটি কীভাবে লক্ষ্যবস্তু কাজ করে সে সম্পর্কে আরও তথ্যের জন্য http://codex.wordpress.org/Class_References/WP_Query# ট্যাক্সোনমি_প্যারামিটারগুলির মাধ্যমে দেখুন - এটি প্রায়শই আইডি দ্বারা স্লাগ দ্বারা পুনরুদ্ধার করা আরও কার্যকর!
category
বাproduct_category
?