در این پست ، ووکامرس قطعه کد فعلی دسته محصول را با شما به اشتراک می گذارم و توضیح می دهم که چگونه می توانید از این کد برای به دست آوردن دسته محصول فعلی استفاده کنید.
اگر شما یک توسعه دهنده ووکامرس هستید یا فقط ووکامرس را به عنوان یک کاربر معمولی سفارشی می کنید ، توانایی دریافت دسته محصولات فعلی از پایگاه داده ووکامرس می تواند به شما در ایجاد انواع گزینه های نمایش برای محصولات شما کمک کند.
همچنین هنگامی که می خواهید ویژگی های خاص مشتری ووکامرس مانند تجربه مشتری ایجاد کنید ، می توانید دسته بندی فعلی را دریافت کنید
من این را در آموزش قبلی در مورد نحوه به دست آوردن نام دسته محصولات فعلی ووکامرس نشان دادم.
ووکامرس دسته بندی فعلی را دریافت کنید
اول ، من فرض می کنم شما راه خود را در زمینه توسعه ووکامرس می دانید و شما فقط به دنبال یک قطعه کد سریع برای به دست آوردن دسته محصول فعلی هستید.
اگر شما یک مبتدی کامل هستید ، ممکن است بخواهید بیشتر از 1000 نوشته ای که قبلاً در مورد توسعه ووکامرس به اشتراک گذاشته ام را در اینجا مشاهده کنید – آموزشهای ووکامرس.
اکنون اجازه دهید روی اصول اولیه دریافت دسته محصولات ووکامرس تمرکز کنیم. ابتدا باید درک کنید که محصولات ووکامرس فقط انواع پست سفارشی هستند – از دیدگاه توسعه وردپرس.
بنابراین می توانید از آنها و دسته بندی محصولات به همان شیوه ای که برای پست های معمولی وردپرس پرس و جو می کنیم ، پرس و جو کنید.
محصولات ووکامرس انواع پست سفارشی هستند که دسته بندی ها یکی از طبقه بندی های آنها است.
از آنجا که ما اکنون نحوه عملکرد دسته های ووکامرس را درک می کنیم ، از تابع اصلی get_the_terms () WordPress استفاده می کنیم تا دسته محصول فعلی ووکامرس را از پایگاه داده دریافت کنیم.
اما ابتدا اجازه دهید مروری سریع بر نحوه عملکرد تابع وردپرس get_the_terms () داشته باشیم!
عملکرد وردپرس برای دریافت دسته فعلی – get_the_terms ()
این تابع به گونه ای طراحی شده است که به سادگی شرایط طبقه بندی مورد نظر ما را بدست آورد و آنچه را که می خواهیم بدست آوردیم تا به این پارامتر یک پارامتر بدهیم.
راه بدست آوردن آنچه از این تابع می خواهیم این است که به آن شناسه پستی را که از آن دسته ها را می خواهیم ، به آن بدهیم.
بنابراین در یک خلاصه سریع این تابع دو پارامتر شناسه یا شی و نام طبقه بندی را در بر می گیرد.
قبل از اینکه گم شویم ، اجازه دهید یک جدول خلاصه سریع به همراه یک مثال ساده به اشتراک بگذارم تا به شما در درک نحوه عملکرد این تابع کمک کند!
شرح |
پارامتر |
این مورد نیاز است تا این تابع کار کند و فقط شناسه پست یا شیئی است که ما می خواهیم داده ها را برای آن دریافت کنیم – در این مورد ، این شناسه پست فعلی است زیرا ما می خواهیم دسته محصول ووکامرس CURRENT PRODUCT را دریافت کنیم | $post |
این نیز برای عملکرد این تابع و نام دسته بندی مورد نیاز است | category$ |
ووکامرس دسته بندی فعلی را دریافت کنید
فرض کنید ما اکنون می خواهیم دسته محصول فعلی را همانطور که در تصویر بالا مشاهده می کنید دریافت کنیم. ما آن را برای مثال داریم
بنابراین می توانیم شناسه محصول فعلی را با استفاده از شی پست جهانی وردپرس دریافت کنیم $ پست به با این کار شناسه به همراه سایر اطلاعات پست ارسال می شود
$ post (WP_Post) شی پست برای پست فعلی. شیء توصیف شده در مرجع کلاسWp_posts
پس از در اختیار داشتن شناسه ، می توانیم شناسه را به تابع get_the_terms () همراه با طبقه بندی منتقل کنیم و دسته محصول فعلی را با موفقیت دریافت خواهیم کرد.
طبقه بندی دسته بندی محصولات ووکامرس – product_cat است ، بنابراین می توانیم شناسه محصول فعلی را به همراه product_cat منتقل کنیم تا همه دسته بندی های مربوط به محصول فعلی را دریافت کنیم. بنابراین ما می توانیم این کار را با این کد انجام دهیم:
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; }
ووکامرس دسته بندی محصولات فعلی را مرحله به مرحله دریافت کنید (3 مرحله اصلی)
بنابراین مراحل زیر را برای بدست آوردن دسته محصول فعلی در ووکامرس انجام داده ایم:
- ابتدا شناسه محصول فعلی را دریافت کنید
- شناسه محصول را به همراه طبقه بندی product_cat به تابع get_the_terms () به عنوان دو پارامتر منتقل کنید.
- مرحله 2 یک آرایه با تمام جزئیات را برمی گرداند. ما از حلقه foreach استفاده می کنیم تا داده ها را حلقه کرده و نام دسته یا هر جزئیات دیگری را که از دسته محصول فعلی می خواهیم دریافت کنیم.
اکنون می توانید دسته بندی را چاپ کرده یا از هر منطق دیگری استفاده کنید ، همانطور که من به مثال تغییر مسیر ووکامرس پس از پرداخت بر اساس طبقه بندی اشاره کردم
من این کد را به یک قلاب به سر سایت نمونه خود اضافه کرده ام و از تصویر زیر می بینید که دسته با موفقیت نمایش داده می شود:
قطعه کد کامل که به موضوع سفارشی ویترین اضافه کردم تا دسته بندی را در سربرگ وردپرس نمایش دهد همانطور که در تصویر بالا نشان داده شده است به شرح زیر است:
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; }
نتیجه
در این پست ما گام به گام راه را برای بدست آوردن دسته محصول ووکامرس فعلی برجسته کرده ایم. همانطور که در مثال بالا مشاهده کردید ، شما فقط باید شناسه محصول فعلی را بدانید و می توانید با استفاده از عملکرد پیش فرض وردپرس ، شرایط را به دست آورید و به طبقه بندی ووکامرس فعلی اعتراض کنید.