اگر می خواهید نام دسته بندی محصول فعلی را از محصول در ووکامرس دریافت کنید، می توانید از شی $wp_query مانند هر پست دیگری در وردپرس استفاده کنید. در این آموزش، نحوه دریافت دسته بندی محصول فعلی از محصول را نشان خواهم داد.
ووکامرس دریافت دسته محصول
فرض کنید ما این محصول را در تصویر زیر داریم و می خواهیم نام دسته بندی این محصول را بدانیم.
همانطور که از تصویر بالا می بینید، ما قبلاً می دانیم که دسته “محصولات جالب” است.
ما باید این دسته محصول فعلی را در کد دریافت کنیم، همانطور که در پست معمولی وردپرس با استفاده از این کد دریافت می کنیم:
$wp_query->get_queried_object()->term_id;
تابع WP شرایط را دریافت کنید
همچنین می توانید از get_the_terms() استفاده کنید که یک تابع بومی وردپرس است که شرایط یک طبقه بندی مرتبط با یک پست خاص را بازیابی می کند.
بیان کلی این تابع به صورت زیر است:
get_the_terms( int|WP_Post $post, string $taxonomy )
پارامترهای این تابع و توضیحات مربوطه در زیر آمده است:
Description | Parameter |
این شناسه پست یا شیئی است که از آن برای دسترسی به پست محصول خاص استفاده می کنیم تا دسته مربوط به محصول را بدست آوریم. این می تواند یک عدد صحیح شناسه POST باشد. | $post |
این طبقه بندی است که می خواهیم با استفاده از این تابع بازیابی کنیم. این می تواند یک دسته یا برچسب در یک محصول WooCommerce باشد. اینها نمونه هایی برای دسته و برچسب ها هستند.
$catTerms = get_the_terms( $post->ID, ‘product_cat’ ); $tagTerms = get_the_terms( $post->ID, ‘product_tag’ ); |
$taxonomy |
نام رده محصول فعلی را در ووکامرس دریافت کنید
اولین گام این است که شیء پست جهانی را اعلام کنید، سپس از تابع بالا برای دریافت دسته بندی محصول فعلی استفاده کنید.
برای نشان دادن اکشن هوک را به هد اضافه میکنم و کد را به تابع callback اضافه میکنم تا با نمایش دسته در هد نشان داده شود. این کد را به functions.php اضافه کنید
add_action('wp_head', 'get_current_product_category'); function get_current_product_category(){ global $post; $terms = get_the_terms( $post->ID, 'product_cat' ); $nterms = get_the_terms( $post->ID, 'product_tag' ); foreach ($terms as $term ) { $product_cat_id = $term->term_id; $product_cat_name = $term->name; break; } echo $product_cat_name; }
هنگامی که این کد را اضافه می کنید باید نمایش دسته بندی محصول را همانطور که در تصویر زیر نشان داده شده است مشاهده کنید:
می توانید با سایر محصولات سایت خود تأیید کنید تا ببینید آیا دسته بندی محصول فعلی همانطور که در محصول دیگری مانند زیر نشان داده شده است دوباره نمایش داده می شود:
نتیجه
در این پست، نحوه استفاده از تابع get_the_terms() وردپرس را برای دریافت دسته بندی محصولات فعلی در ووکامرس برجسته کرده ایم. این ساده ترین روشی است که می توانید برای دریافت دسته بندی محصول و نمایش آن در قالب وردپرس یا عملکردهای افزونه خود استفاده کنید.