শপিফাই স্ক্রিপ্ট এর প্রয়োজনীয়তা ও সীমাবদ্ধতা
নিরাপত্তা বাড়াতে এবং যেকোনো সময়ে আপনার স্টোর যতজন গ্রাহকই ব্যবহার করুন না কেন, স্ক্রিপ্টগুলো যাতে চলতে পারে তা নিশ্চিত করার জন্য শপিফাই স্ক্রিপ্ট এর কিছু সীমাবদ্ধতা রয়েছে। আপনার Shopify স্টোরের জন্য স্ক্রিপ্ট তৈরি করার সময় নিচের সীমাবদ্ধতাগুলো মনে রাখবেন।
এই পেজে
- অনলাইন স্টোর এবং Storefront API
- প্রকাশিত স্ক্রিপ্ট
- শপিফাই স্ক্রিপ্ট এর সর্বোচ্চ সংখ্যা
- ড্রাফট অর্ডার
- মেটাফিল্ড
- কার্ট/চেকআউট অ্যাট্রিবিউট
- ডিসকাউন্ট কোড
- লাইন আইটেম
- শিপিং রেট
- মাল্টি-কারেন্সি
- রেগুলার এক্সপ্রেশন
- থিম
- রিসোর্স
- ইনপুট/আউটপুট
- সময় ও র্যান্ডমনেস
- স্ক্রিপ্ট ক্যারেক্টারের সীমা
- সাবস্ক্রিপশন অর্ডার
- দ্রুত চেকআউট
- Shopify Point of Sale (POS)
- পেমেন্ট গেটওয়েগুলোর নাম পরিবর্তন
- চেকআউটে স্প্লিট শিপিং
অনলাইন স্টোর এবং Storefront API
আপনি যখন একটি স্ক্রিপ্ট তৈরি বা এডিট করেন, তখন আপনি বেছে নিতে পারেন যে এটি শুধু আপনার অনলাইন স্টোরে চলবে নাকি অনলাইন স্টোর ও নিচের অ্যাপগুলোতে চলবে:
- Storefront API, JavaScript Buy SDK বা Mobile Buy SDKs (Android এবং iOS) দিয়ে তৈরি করা কাস্টম অ্যাপ
- চেকআউট তৈরি করে এমন কাস্টম অ্যাপ
- Tapcart এবং Plobal Apps মোবাইল অ্যাপ বিল্ডার
স্ক্রিপ্টগুলো কাজ করার জন্য আপনার ওয়েবসাইটে বিল্ট-ইন শপিং কার্ট ফাংশনালিটি থাকতে হবে, তাই আপনি কিনুন বাটন বা Facebook and Instagram by Meta সেলস চ্যানেলের সাথে স্ক্রিপ্ট ব্যবহার করতে পারবেন না।
প্রকাশিত স্ক্রিপ্ট
প্রতি স্ক্রিপ্টের ধরণ অনুযায়ী একবারে শুধু একটি স্ক্রিপ্ট প্রকাশ করা যায়। উদাহরণস্বরূপ, আপনি একটি লাইন আইটেম স্ক্রিপ্ট এবং একটি শিপিং রেট স্ক্রিপ্ট প্রকাশ করতে পারেন, তবে একই সাথে দুটি লাইন আইটেম স্ক্রিপ্ট প্রকাশ করতে পারবেন না।
শপিফাই স্ক্রিপ্ট এর সর্বোচ্চ সংখ্যা
আপনি 200টি পর্যন্ত শপিফাই স্ক্রিপ্ট তৈরি করতে পারবেন।
ড্রাফট অর্ডার
ড্রাফট অর্ডার বা ড্রাফট অর্ডারের চেকআউটের ক্ষেত্রে লাইন আইটেম স্ক্রিপ্ট, শিপিং রেট স্ক্রিপ্ট এবং পেমেন্ট স্ক্রিপ্ট কাজ করে না।
মেটাফিল্ড
শপিফাই স্ক্রিপ্ট মেটাফিল্ড-এ অ্যাক্সেস করতে পারে না।
কার্ট/চেকআউট অ্যাট্রিবিউট
শপিফাই স্ক্রিপ্ট Shopify Liquid কার্ট অ্যাট্রিবিউট-এ অ্যাক্সেস করতে পারে না। আপনি আপনার গ্রাহকদের থেকে অতিরিক্ত তথ্য সংগ্রহ করতে আপনার কার্ট পেজগুলোতে এই অ্যাট্রিবিউটগুলো যোগ করতে পারেন, কিন্তু আপনি এগুলো ব্যবহার করে এমন কোনো স্ক্রিপ্ট তৈরি করতে পারবেন না।
ডিসকাউন্ট কোড
স্ক্রিপ্ট একটি ডিসকাউন্ট কোড প্রয়োগ করা হয়েছে কিনা, ডিসকাউন্টের পরিমাণ এবং ডিসকাউন্টের ধরন, যেমন নির্দিষ্ট পরিমাণ, শতকরা হার বা শিপিংয়ের মতো বিষয়গুলোতে অ্যাক্সেস করতে পারে। ডিসকাউন্ট কোড কীভাবে প্রয়োগ করা হয়, উদাহরণস্বরূপ এটি কার্ট-নির্দিষ্ট নাকি লাইন আইটেম-নির্দিষ্ট কিনা, সেগুলোতে স্ক্রিপ্ট অ্যাক্সেস করতে পারে না। এর মানে হল স্ক্রিপ্ট ডিসকাউন্ট পরবর্তী মোট পরিমাণ বা স্বয়ংক্রিয় ডিসকাউন্টে অ্যাক্সেস করতে পারে না।
কার্টে প্রয়োগ করা ডিসকাউন্টে অ্যাক্সেস করে এমন লাইন আইটেম এবং শিপিং স্ক্রিপ্টগুলো ডিসকাউন্ট সমন্বয়ের সাথে সামঞ্জস্যপূর্ণ নয়। .discount_code মেথড শুধু একটিমাত্র ডিসকাউন্ট কোড রিটার্ন করতে পারে। ডিসকাউন্ট সমন্বয় ব্যবহার করে একাধিক ডিসকাউন্ট কোড অন্তর্ভুক্ত থাকা কার্টগুলো সমর্থিত নয়।
লাইন আইটেম
স্ক্রিপ্টগুলো কার্টে কোনো আইটেম যোগ করতে বা কোনো আইটেমের দাম বাড়াতে পারে না।
শিপিং রেট
স্ক্রিপ্টগুলি শিপিং রেটের দাম বাড়াতে পারে না।
মাল্টি-কারেন্সি
আপনার স্ক্রিপ্টগুলি মাল্টি-কারেন্সি-এর সাথে প্রত্যাশা অনুযায়ী কাজ নাও করতে পারে। আপনার স্টোরের প্রাথমিক মুদ্রা ছাড়া অন্য কোনো মুদ্রায় থাকা কার্ট বা চেকআউটের জন্য আপনার স্ক্রিপ্টগুলি যাতে কাজ করে তা নিশ্চিত করতে, আপনাকে আপনার স্ক্রিপ্টগুলি Shopify Functions-এ মাইগ্রেট করতে হবে।
রেগুলার এক্সপ্রেশন
রেগুলার এক্সপ্রেশন ম্যাচিং সমর্থিত নয়। আপনি যদি একটি লাইন আইটেম স্ক্রিপ্ট তৈরি করেন, তাহলে আপনি বিকল্প সমাধান হিসেবে নিম্নলিখিত পদ্ধতিগুলোর একটি ব্যবহার করতে পারেন:
splitপদ্ধতিstart_withএবংend_withপদ্ধতিincludeপদ্ধতি
থিম
আপনার স্ক্রিপ্টগুলিকে সমর্থন করতে এবং আপনার গ্রাহকদের বিভ্রান্তি এড়াতে আপনাকে আপনার Liquid থিম আপডেট করতে হতে পারে। উদাহরণস্বরূপ, সব থিম কার্টে লাইন আইটেম ডিসকাউন্ট প্রদর্শন করে না। যদি এটি আপনার ক্ষেত্রে হয়, তাহলে কার্টে লাইন আইটেম ডিসকাউন্ট প্রদর্শন করতে আপনাকে আপনার থিম সম্পাদনা করতে হবে। আপনার Liquid থিমগুলিতে আপনি যেসব ধরনের পরিবর্তন করতে পারবেন সে সম্পর্কে আরও জানুন।
রিসোর্স
একটি স্ক্রিপ্টের জন্য উপলব্ধ CPU এবং মেমরির পরিমাণ সীমিত। একটি স্ক্রিপ্টের জন্য সংরক্ষিত রিসোর্সগুলো কার্টের আকার এবং স্ক্রিপ্টের জন্য প্রয়োজনীয় গণনার পরিমাণের উপর নির্ভর করে। এগুলো যাতে আপনার স্ক্রিপ্টকে প্রত্যাশা অনুযায়ী কাজ করতে বাধা না দেয় তা নিশ্চিত করতে Shopify এই রিসোর্স লিমিটগুলো যত্ন সহকারে ট্র্যাক করে।
আপনি যখন কোনো স্ক্রিপ্ট টেস্ট করেন, তখন Script Editor কনসোল স্ক্রিপ্টটি ব্যবহার করা বরাদ্দকৃত রিসোর্সের শতাংশ প্রিন্ট করে।
ইনপুট/আউটপুট
কিছু ব্যতিক্রম ছাড়া, শপিফাই স্ক্রিপ্ট ইনপুট/আউটপুটের জন্য সক্ষম নয়। এর মানে হলো স্ক্রিপ্টগুলি ওয়েব রিকোয়েস্ট বা ডেটাবেস কল এক্সিকিউট করতে পারে না এবং ব্যবহারকারীর কাছ থেকে ইনপুট নিতে পারে না।
Script Editor অ্যাপের কনসোলে টেক্সট প্রিন্ট করার জন্য puts পদ্ধতিটি ব্যবহার করা যেতে পারে।
সময় এবং র্যান্ডমনেস
স্ক্রিপ্টগুলি র্যান্ডম বা সময়-ভিত্তিক গণনা জড়িত করতে পারে না। শপিফাই স্ক্রিপ্টগুলি দ্বারা Time অবজেক্ট এবং rand পদ্ধতি অ্যাক্সেস করা যাবে না।
যেহেতু প্রতিবার কার্টের মোট মূল্য পুনরায় হিসাব করার সময় স্ক্রিপ্ট রান করে, তাই কোনো গ্রাহক যদি ঘন ঘন তার কার্ট পরিবর্তন করেন, তবে সময় বা র্যান্ডম নম্বর জেনারেশনের উপর ভিত্তি করে তৈরি করা স্ক্রিপ্টে অপ্রত্যাশিত বা বিভ্রান্তিকর ফলাফল দেখা যেতে পারে। তবে, আপনি Launchpad অ্যাপ ব্যবহার করে ইভেন্টগুলোর সময় স্ক্রিপ্ট রান করার শিডিউল করতে পারেন।
স্ক্রিপ্ট অক্ষরের সীমা
আপনি সর্বোচ্চ 40,960 অক্ষরের স্ক্রিপ্ট তৈরি করতে পারবেন।
সাবস্ক্রিপশন অর্ডার
আপনার লাইন আইটেম এবং শিপিং স্ক্রিপ্টগুলি যদি কোনো সাবস্ক্রিপশন পণ্যের জন্য ডিসকাউন্ট তৈরি করে, তাহলে ডিসকাউন্টটি নিম্নলিখিত পেমেন্টের ক্ষেত্রে প্রযোজ্য হবে:
- নির্ধারিত অর্ডারের ক্ষেত্রে প্রযোজ্য না হয়ে শুধুমাত্র পে-পার-ডেলিভারির প্রথম পেমেন্ট
- প্রিপেইড সাবস্ক্রিপশন অর্ডারের সম্পূর্ণ পরিমাণ
সাবস্ক্রিপশন এবং স্ক্রিপ্ট সম্পর্কে আরও জানুন।
দ্রুত চেকআউট
আপনি যখন দ্রুত চেকআউট-এর সাথে শপিফাই স্ক্রিপ্ট ব্যবহার করেন, তখন আপনার গ্রাহক দ্রুত পেমেন্ট পদ্ধতি নির্বাচন করার পরে শিপিং ডিসকাউন্ট প্রয়োগ করা হয়। এ কারণে, অর্ডারের মূল্যের পরিবর্তন গ্রাহকের ডিভাইস বা ব্রাউজারে প্রতিফলিত হয় না। গ্রাহকরা তাদের দ্রুত চেকআউটে আসল দাম দেখতে পারেন, তবে তাদের কাছ থেকে সঠিক ডিসকাউন্ট মূল্য চার্জ করা হবে।
Shopify Point of Sale (POS)
শপিফাই স্ক্রিপ্ট Shopify Point of Sale (POS)-এর সাথে কাজ করে না।
পেমেন্ট গেটওয়ের নাম পরিবর্তন
গেটওয়ের নাম হিসেবে প্রদর্শিত ইমেজ বা লোগো আছে এমন পেমেন্ট গেটওয়ের নাম পরিবর্তন করা যায় না। নামের পাশে লোগোর ইমেজ থাকা পেমেন্ট গেটওয়েগুলোর নাম পরিবর্তন করা যেতে পারে।
চেকআউটে স্প্লিট শিপিং
শিপিং স্ক্রিপ্টগুলি Shopify Checkout-এর স্প্লিট শিপিং-এর সাথে অসামঞ্জস্যপূর্ণ। আপনি যদি শিপিং স্ক্রিপ্ট ব্যবহার করেন এবং স্প্লিট শিপিং চালু করেন, তাহলে চেকআউটে আপনার গ্রাহকদের বিভক্ত চালান দেখানো হবে না।