আমি মনে করি get_categories()
না এই ক্ষেত্রে আপনার জন্য সেরা বিকল্প কারণ এটি অ্যাঙ্কর ট্যাগ হিসাবে তালিকাভুক্ত সমস্ত বিভাগের সাথে একটি স্ট্রিং প্রদান করে, প্রদর্শন করার জন্য জরিমানা, তবে বিভাগগুলি কী কী তা কোডে বের করার জন্য দুর্দান্ত নয়। ঠিক আছে, সুতরাং আপনার প্রথম কাজটি করা দরকার বর্তমান পণ্যটির জন্য পণ্য / পোস্ট অবজেক্টটি যদি আপনার কাছে ইতিমধ্যে না থাকে:
global $post;
তারপরে আপনি পণ্যটির জন্য পণ্য বিভাগের মেয়াদী অবজেক্ট (বিভাগগুলি) পেতে পারেন। এখানে আমি বিভাগের পদার্থের অবজেক্টগুলিকে একটি সাধারণ অ্যারে হিসাবে নামিয়েছি $categories
যাতে স্লাগগুলি কী বরাদ্দ করা হয় তা আরও সহজ। নোট করুন যে এটি কেবলমাত্র বর্তমান পৃষ্ঠার এক নয়, যেমন পণ্যটিতে নির্ধারিত সমস্ত বিভাগ ফিরিয়ে দেবে/shop/audio/funzo/
:
$terms = wp_get_post_terms( $post->ID, 'product_cat' );
foreach ( $terms as $term ) $categories[] = $term->slug;
তারপরে আমাদের কেবল তালিকাটি বিভাগে আছে কিনা তা পরীক্ষা করে দেখতে হবে:
if ( in_array( 'audio', $categories ) ) { // do something
সবগুলোকে একত্রে রাখ:
<?php
global $post;
$terms = wp_get_post_terms( $post->ID, 'product_cat' );
foreach ( $terms as $term ) $categories[] = $term->slug;
if ( in_array( 'audio', $categories ) ) {
echo 'In audio';
woocommerce_get_template_part( 'content', 'single-product' );
} elseif ( in_array( 'elektro', $categories ) ) {
echo 'In elektro';
woocommerce_get_template_part( 'content', 'single-product' );
} else {
echo 'some blabla';
}
আশা করি আপনি এটিই খুঁজছিলেন এবং আপনার প্রশ্নের উত্তর দিয়েছেন।
)
? এটি হওয়া উচিতif (is_product_category('audio'))