Store Cart Rules یکی از ماژولهای کاربردی ZXStore است که امکان تعریف قوانین اختصاصی برای سبد خرید، محصولات و روشهای ارسال را فراهم میکند.
در بسیاری از فروشگاهها، شرایط خرید محصولات همیشه ساده نیست. ممکن است فروشنده بخواهد مشتری یک محصول را حداقل در تعداد مشخصی خریداری کند، تعداد خرید یک کالا محدود باشد، دو محصول حتماً همراه یکدیگر خریداری شوند یا یک محصول تنها با روش ارسال خاصی قابل ارسال باشد.
ماژول Store Cart Rules برای مدیریت همین شرایط طراحی شده است.
با استفاده از این ماژول میتوان بدون تغییر در هسته ZXStore، قوانین مختلفی را روی سبد خرید و سفارش اعمال کرد و فرآیند ثبت سفارش را متناسب با نیاز هر فروشگاه کنترل نمود.
Store Cart Rules چه کاری انجام میدهد؟
این ماژول یک سیستم قانونگذاری برای سبد خرید ایجاد میکند که میتواند شرایط مختلفی را هنگام خرید بررسی کند.
برای مثال میتوانید مشخص کنید:
- مشتری باید حداقل ۲ عدد از یک محصول خریداری کند.
- مشتری نمیتواند بیشتر از ۵ عدد از یک محصول سفارش دهد.
- یک محصول فقط با روش ارسال مشخصی قابل ارسال باشد.
- یک روش ارسال فقط برای محصولاتی که به آن اختصاص داده شدهاند نمایش داده شود.
- دو محصول خاص باید همیشه با هم در سبد خرید باشند.
- خرید یک محصول تنها زمانی امکانپذیر باشد که محصول دیگری نیز در سبد خرید وجود داشته باشد.
به این ترتیب فروشگاه میتواند قوانین کسبوکار خود را مستقیماً در فرآیند خرید پیادهسازی کند.
انواع قوانین سبد خرید در ZXStore
در حال حاضر Store Cart Rules از ۶ نوع قانون اصلی پشتیبانی میکند:
min_qtymax_qtyshipping_onlyshipping_privatemust_togethermust_have
هر قانون کاربرد مشخصی دارد و میتوان آن را برای محصولات یا روشهای ارسال موردنظر تعریف کرد.
۱. حداقل تعداد خرید؛ min_qty
با قانون min_qty میتوان حداقل تعداد مجاز برای خرید یک محصول را مشخص کرد.
فرمت قانون:
min_qty:product_id,min_qty
برای مثال:
min_qty:25,3
یعنی محصول با شناسه 25 باید در سبد خرید حداقل ۳ عدد باشد.
کاربرد این قانون
این قابلیت برای محصولاتی مناسب است که فروش تکی آنها منطقی نیست یا فروشنده میخواهد مشتری آنها را در تعداد مشخصی خریداری کند.
برای مثال:
- فروش عمده
- فروش محصولات بستهای
- فروش اقلام مصرفی
- محصولاتی که حداقل تعداد سفارش دارند
- فروش کالا در بستههای چندتایی
مثال
فرض کنید محصولی با شناسه 100 فقط در صورت خرید حداقل ۵ عدد قابل سفارش باشد:
min_qty:100,5
در این حالت:
1 عدد ❌ 3 عدد ❌ 4 عدد ❌ 5 عدد ✅ 8 عدد ✅
بنابراین سیستم اجازه ثبت سفارش با تعداد کمتر از مقدار تعیینشده را نمیدهد.
۲. حداکثر تعداد خرید؛ max_qty
با قانون max_qty میتوان تعداد خرید یک محصول را محدود کرد.
فرمت:
max_qty:product_id,max_qty
برای مثال:
max_qty:50,2
یعنی مشتری در هر سفارش نمیتواند بیشتر از ۲ عدد از محصول ۵۰ خریداری کند.
کاربردهای رایج
این قانون برای شرایطی مانند موارد زیر بسیار کاربردی است:
- محصولات محدود
- کالاهای تخفیفخورده
- فروش ویژه
- کمپینهای تبلیغاتی
- محصولات دارای موجودی محدود
- جلوگیری از خرید تعداد زیاد توسط یک مشتری
مثال
اگر قانون زیر تعریف شود:
max_qty:50,2
نتیجه:
1 عدد ✅ 2 عدد ✅ 3 عدد ❌ 5 عدد ❌
این محدودیت مستقیماً روی سبد خرید اعمال میشود.
۳. ارسال اختصاصی محصول؛ shipping_only
برخی محصولات را نمیتوان با تمام روشهای ارسال موجود در فروشگاه ارسال کرد.
برای مثال ممکن است یک محصول:
- فقط با پیک ارسال شود.
- فقط با باربری ارسال شود.
- به دلیل وزن بالا فقط با روش ارسال خاصی ارسال شود.
- نیاز به حمل اختصاصی داشته باشد.
- برای ارسال به شرایط خاصی نیاز داشته باشد.
قانون shipping_only برای همین شرایط طراحی شده است.
فرمت:
shipping_only:product_id,shipping_id
مثلاً:
shipping_only:10,2
یعنی:
محصول شماره ۱۰ فقط باید با روش ارسال شماره ۲ ارسال شود.
در نتیجه روشهای ارسال نامرتبط برای این محصول قابل استفاده نخواهند بود.
۴. روش ارسال خصوصی؛ shipping_private
قانون shipping_private مکمل قانون shipping_only است.
فرمت:
shipping_private:shipping_id,1
برای مثال:
shipping_private:4,1
یعنی روش ارسال شماره 4 بهعنوان یک روش ارسال خصوصی علامتگذاری میشود.
روشهای ارسال خصوصی فقط برای محصولاتی نمایش داده میشوند که با قانون shipping_only به آن روش ارسال اختصاص داده شدهاند.
ارتباط shipping_only و shipping_private
این دو قانون در کنار هم امکان کنترل دقیقتری روی روشهای ارسال ایجاد میکنند.
مثلاً:
shipping_only:10,4
shipping_private:4,1
در این مثال:
- محصول
10فقط با روش ارسال4ارسال میشود. - روش ارسال
4یک روش ارسال خصوصی است. - این روش ارسال فقط برای محصولاتی که به آن اختصاص داده شدهاند نمایش داده میشود.
این قابلیت بهخصوص برای فروشگاههایی که روشهای ارسال اختصاصی برای برخی محصولات دارند بسیار کاربردی است.
۵. خرید همزمان محصولات؛ must_together
گاهی دو محصول باید حتماً با هم خریداری شوند.
برای این شرایط میتوان از قانون must_together استفاده کرد.
فرمت:
must_together:product_id_1,product_id_2
برای مثال:
must_together:10,20
یعنی محصولات 10 و 20 باید همزمان در سبد خرید وجود داشته باشند.
مثال کاربردی
فرض کنید یک دستگاه را همراه با یک قطعه ضروری برای استفاده از آن میفروشید.
محصول:
دستگاه → 10
محصول:
قطعه ضروری → 20
با تعریف:
must_together:10,20
وجود یکی از آنها بدون دیگری مجاز نخواهد بود.
نتیجه
محصول 10 تنها ❌ محصول 20 تنها ❌ محصول 10 + 20 ✅
این قانون برای محصولاتی مانند:
- کالاهای وابسته
- قطعات مکمل ضروری
- تجهیزات و متعلقات
- پکیجهای اجباری
- محصولات دارای وابستگی عملیاتی
کاربرد دارد.
۶. محصول اجباری؛ must_have
قانون must_have شباهت زیادی به must_together دارد، اما یک تفاوت مهم دارد.
در must_have یک محصول شرط وجود محصول دیگری است.
فرمت:
must_have:product_id_1,product_id_2
منطق قانون:
اگر محصول اول در سبد خرید باشد، محصول دوم نیز باید در سبد وجود داشته باشد.
مثال
must_have:10,20
یعنی:
اگر محصول
10خریداری شود، محصول20نیز باید خریداری شود.
اما الزام به این معنی نیست که محصول 20 حتماً به وجود محصول 10 وابسته باشد.
بنابراین:
محصول 10 تنها ❌ محصول 20 تنها ✅ محصول 10 + 20 ✅
این تفاوت، must_have را برای تعریف وابستگی یکطرفه بین محصولات بسیار کاربردی میکند.
تفاوت must_together و must_have
این دو قانون ممکن است در نگاه اول شبیه به هم باشند، اما منطق متفاوتی دارند.
must_together
دو محصول باید همیشه با هم باشند.
10 ↔ 20
یعنی:
10 تنها ❌ 20 تنها ❌ 10 + 20 ✅
must_have
محصول دوم فقط در صورت وجود محصول اول اجباری است.
10 → 20
یعنی:
10 تنها ❌ 20 تنها ✅ 10 + 20 ✅
بنابراین اگر وابستگی دوطرفه است، must_together مناسبتر است و اگر وابستگی یکطرفه است، باید از must_have استفاده کرد.
ترکیب چند قانون برای یک فروشگاه
یکی از مزایای سیستم قوانین سبد خرید ZXStore این است که قوانین مختلف میتوانند در کنار یکدیگر استفاده شوند.
برای مثال فرض کنید یک فروشگاه یک محصول خاص را به این شکل عرضه میکند:
- حداقل خرید: ۲ عدد
- حداکثر خرید: ۵ عدد
- فقط با پیک ارسال شود
- همراه با محصول دیگری خریداری شود
در این صورت میتوان چند قانون مختلف برای کنترل کامل فرآیند خرید تعریف کرد:
min_qty:10,2
max_qty:10,5
shipping_only:10,4
must_have:10,20
اکنون فروشگاه میتواند همزمان موارد زیر را کنترل کند:
تعداد خرید → روش ارسال → وابستگی محصول
بدون اینکه منطق این قوانین به شکل دستی در بخشهای مختلف فروشگاه پیادهسازی شود.
Store Cart Rules برای چه فروشگاههایی مناسب است؟
این ماژول فقط برای فروشگاههای معمولی طراحی نشده و میتواند در سناریوهای مختلف مورد استفاده قرار گیرد.
فروشگاههای عمدهفروشی
برای تعیین حداقل تعداد خرید:
min_qty
فروش ویژه و کمپینها
برای محدود کردن تعداد خرید:
max_qty
کالاهای حجیم یا خاص
برای تعیین روش ارسال:
shipping_only
shipping_private
محصولات وابسته
برای الزام به خرید محصول مکمل:
must_have
محصولات کاملاً وابسته
برای الزام خرید همزمان:
must_together
ساختار ساده، کاربرد گسترده
یکی از اهداف Store Cart Rules این است که تعریف قوانین پیچیده برای فروشگاه، به ساختارهای پیچیده و تغییرات متعدد در هسته فروشگاه نیاز نداشته باشد.
قوانین در قالبی ساده تعریف میشوند:
rule:parameter_1,parameter_2
برای مثال:
min_qty:10,2
max_qty:10,5
shipping_only:10,4
shipping_private:4,1
must_together:10,20
must_have:10,30
این ساختار ساده باعث میشود سیستم قوانین بتواند در آینده نیز با اضافه شدن Ruleهای جدید توسعه پیدا کند.
Store Cart Rules؛ بخشی از اکوسیستم ZXStore
Store Cart Rules یکی از Extensionهای قابل نصب در اکوسیستم ZXStore است و بدون نیاز به تغییر هسته اصلی فروشگاه، قابلیتهای جدیدی را به فرآیند خرید اضافه میکند.
این ماژول نمونهای از معماری ماژولار ZXStore است؛ معماریای که اجازه میدهد امکانات تخصصی بر اساس نیاز هر فروشگاه به سیستم اضافه شوند.
در نتیجه فروشگاهی که فقط به محدودیت تعداد خرید نیاز دارد، میتواند قوانین مربوط به تعداد را فعال کند و فروشگاهی که فرآیند ارسال یا محصولات وابسته پیچیدهتری دارد، از Ruleهای مربوط به ارسال و وابستگی محصولات نیز استفاده کند.
جمعبندی
Store Cart Rules یک سیستم قانونگذاری برای کنترل دقیقتر سبد خرید و سفارش در ZXStore است.
این ماژول در حال حاضر از ۶ قانون اصلی پشتیبانی میکند:
| قانون | کاربرد |
|---|---|
min_qty | تعیین حداقل تعداد خرید محصول |
max_qty | تعیین حداکثر تعداد خرید محصول |
shipping_only | اختصاص یک روش ارسال به محصول |
shipping_private | خصوصی کردن یک روش ارسال |
must_together | الزام خرید همزمان دو محصول |
must_have | الزام وجود یک محصول در صورت خرید محصول دیگر |
با استفاده از این قوانین، فروشگاه میتواند شرایط خرید و ارسال را دقیقتر کنترل کرده و بسیاری از محدودیتها و وابستگیهای کسبوکار را مستقیماً در فرآیند سبد خرید پیادهسازی کند.
Store Cart Rules؛ قوانین فروشگاه را به قوانین قابل اجرا در سبد خرید تبدیل کنید.
دیدگاهتان را بنویسید