سیستم توسعهپذیری و APIهای nopCommerce، ستون فقرات هر استراتژی یکپارچهسازی و توسعه سفارشی هستند. با رشد فروشگاه اینترنتی، نیاز به اتصال به سیستمهای خارجی مانند ERP، CRM، سیستمهای حسابداری، انبارداری و اپلیکیشنهای موبایل به یک ضرورت تبدیل میشود. APIها (رابطهای برنامهنویسی) این امکان را فراهم میکنند که فروشگاه شما به صورت ایمن و کارآمد با سایر نرمافزارها ارتباط برقرار کند و دادهها را به صورت خودکار مبادله نماید.
استفاده از APIها و ابزارهای توسعه، مزایای متعددی دارد: کاهش زمان و هزینه توسعه، یکپارچهسازی آسان با سیستمهای موجود، امکان ساخت اپلیکیشنهای موبایل و وبسایتهای هدلس (Headless)، و خودکارسازی فرایندهای تجاری. در این راهنما، به بررسی کامل ابزارهای توسعه و APIهای موجود در nopCommerce میپردازیم.
تیم اصلی nopCommerce یک پلاگین Web API رسمی و قدرتمند را ارائه کرده است که به شما امکان میدهد با هر سرویس شخص ثالث یا اپلیکیشن موبایل خود تعامل داشته باشید. این پلاگین با قیمت ۱۴۰۰ دلار در دسترس است و با نسخههای ۴.۴۰ تا ۴.۹۰ nopCommerce سازگاری دارد.
این API که به صورت ۱۰۰٪ متنباز (Open Source) ارائه میشود، از احراز هویت JSON Web Tokens (JWT) برای امنیت استفاده میکند. مهمترین ویژگی این پلاگین، پوشش کامل تمام متدهای nopCommerce است؛ هم بخش مدیریت (بکاند) و هم بخش عمومی (فرانتاند). در مجموع بیش از ۱۱۰۰ متد API در این پلاگین در دسترس است که آن را به یکی از کاملترین راهحلهای API در بازار تبدیل میکند.
از جمله کاربردهای اصلی این API میتوان به یکپارچهسازی با سیستمهای حسابداری، ERP یا CRM، سیستمهای مدیریت موجودی و انبار، و ساخت اپلیکیشنهای موبایل بومی برای اندروید و iOS اشاره کرد.
لازم به ذکر است که این پلاگین به صورت مجوزدار (License) ارائه میشود و برای هر آدرس URL فروشگاه، یک مجوز جداگانه مورد نیاز است. در صورت استفاده از تنظیمات چندفروشگاهی (Multi-Store)، برای هر فروشگاه باید یک مجوز جداگانه خریداری شود.
علاوه بر API رسمی، راهحلهای متعددی از سوی توسعهدهندگان شخص ثالث برای نیازهای مختلف ارائه شده است. در ادامه به بررسی برخی از بهترینهای آنها میپردازیم.
API مدیریت nopStation: پلاگین Admin REST API توسط nopStation، یک راهحل مقرونبهصرفه با قیمت ۱۹۹ دلار است که به شما امکان میدهد نقاط پایانی بخش مدیریت فروشگاه را در معرض استفاده برنامههای دیگر قرار دهید. این پلاگین با نسخههای ۴.۴۰ تا ۴.۸۰ سازگار است و دسترسی گستردهای به بخشهای مختلف مدیریت از جمله کاتالوگ، فروش، مشتریان، تخفیفها، مدیریت محتوا و تنظیمات فروشگاه فراهم میکند.
API عمومی nopStation: پلاگین Web API توسط nopStation برای بخش عمومی فروشگاه با قیمت ۱۹۹ دلار در دسترس است و امکان ساخت اپلیکیشنهای موبایل و برنامههای کراسپلتفرم را فراهم میکند. این پلاگین با نسخههای ۴.۲۰ تا ۴.۸۰ سازگار است و از امکاناتی مانند خانه، دستهبندی، جستجو، جزئیات محصول، سبد خرید، تسویهحساب، احراز هویت و اعلانهای پوش (Push Notification) پشتیبانی میکند.
پلاگین Advanced REST Web API توسط NopAdvance: این پلاگین با قیمت ۱۹ دلار، یکی از مقرونبهصرفهترین گزینهها برای یکپارچهسازی فرانتاند است که با نسخههای ۴.۵۰ تا ۴.۹۰ سازگاری دارد. این API با استفاده از JWT برای احراز هویت و ابزارهایی مانند مستندات Swagger، راهنمای جامع کاربر، فشردهسازی پاسخ و کش سمت سرور برای عملکرد بهینه، بیش از ۲۰۰ متد API را پوشش میدهد.
API2Cart Bridge Connector: این پلاگین رایگان یک راهحل یکپارچه برای اتصال فروشگاه nopCommerce شما به API2Cart است. API2Cart یک API یکپارچه برای تجارت الکترونیک است که به توسعهدهندگان نرمافزار و فروشندگان SaaS امکان میدهد برنامههای خود را به بیش از ۷۰ پلتفرم تجارت الکترونیک از جمله nopCommerce، Shopify، Magento، و WooCommerce متصل کنند. این پلاگین که به طور خاص برای نسخه ۴.۹۰ nopCommerce طراحی شده است، به عنوان یک پل امن بین فروشگاه شما و نرمافزارهای شخص ثالث عمل میکند و امکان تبادل دادههایی مانند محصولات، سفارشات، دستهبندیها، مشتریان، حملونقل و بازگشت کالا را فراهم میسازد.
سیستم افزونههای nopCommerce به شما امکان میدهد قابلیتهای جدیدی را بدون تغییر در هسته اصلی سیستم ایجاد کنید. افزونهها مجموعهای از برنامهها یا مؤلفههای مستقل هستند که میتوانند به سیستم موجود اضافه یا از آن حذف شوند بدون اینکه تأثیری بر عملکرد اصلی سیستم داشته باشند.
برای شروع توسعه یک افزونه، میتوانید از ابزارهای متنوعی استفاده کنید. ابزار nopcli (nopCommerce CLI) یک ابزار خط فرمان برای ساخت افزونههای nopCommerce است که با نصب آن از طریق NPM (npm install -g nopcli)، میتوانید یک افزونه جدید را در کمتر از ۵ دقیقه ایجاد کنید.
ساختار یک افزونه معمولاً شامل موارد زیر است: یک پروژه Class Library در داتنت، یک کلاس اصلی که از BasePlugin ارثبری میکند، یک فایل plugin.json برای معرفی افزونه، و در صورت نیاز، کنترلرها، ویوها و سرویسهای مربوطه.
برنامه گواهینامه توسعهدهندگان nopCommerce، یک استاندارد حرفهای برای توسعهدهندگانی است که میخواهند تخصص خود را در این پلتفرم به اثبات برسانند. این گواهینامه دانش عمیقی از جنبههای مختلف توسعه در nopCommerce را پوشش میدهد.
از جمله مباحث کلیدی که در این گواهینامه پوشش داده میشود، میتوان به موارد زیر اشاره کرد: آشنایی با پروژههای مختلف nopCommerce مانند Nop.Core، Nop.Data و Nop.Web، چگونگی عملکرد مسیریابی URL و نحوه افزودن مسیرهای جدید، آشنایی با URLهای دوستدار موتورهای جستجو و نحوه پیادهسازی آنها، نحوه افزودن تنظیمات جدید در nopCommerce، پیادهسازی و ثبت وظایف زمانبندیشده (Schedule Tasks)، کار با رویدادها و اشتراکدریافت آنها، نحوه کارکرد اعتبارسنجی ورودیها، آشنایی با سیستم تزریق وابستگی (DI/IoC) و اینترفیس IDependencyRegistrar، نحوه کارکرد محلیسازی موجودیتها و ساختار جداول اطلاعات مشتریان.
با استفاده از ابزارهای API و ساختار توسعهپذیری nopCommerce، میتوانید فروشگاه خود را به هر سیستمی متصل کنید، قابلیتهای جدیدی به آن اضافه نمایید و تجربهای کاملاً سفارشی برای مشتریان خود ایجاد کنید.