چندی پیش نسخه جدید از پلتفرم فروشگاه ساز ناپکامرس (NopCommerce) توسط تیم توسعه این فروشگاه ساز عرضه شد که پیشرفتها و بهینهسازیهای چشمگیری نسبت به نسخههای قبلی خود دارد. دلیل اصلی این پیشرفتها، به روز رسانی از Entity Framework نسخه 2.1 به Entity Framework نسخه 2.2 است که بسیاری از موارد و مشکلات موجود را حل کرده است و باعث شده است تا این فروشگاه ساز بسیار روانتر و بهینهتر عمل کند. در ادامه فهرستی از تغییرات اعمال شده و مشکلات حل شده در نسخه جدید فروشگاه ساز ناپکامرس ارائه خواهد شد.
مهمترین تغییرات:
- طراحی جدید بخش مدیریت فروشگاه (پنل ادمین). افزایش تجربه کاربری و کیفیت رابط کاربری در بخش مدیریت فروشگاه.
- افزایش کارایی و بهینگی فروشگاه به میزان قابل توجه.
- امکان پیاده سازی ناپکامرس بر روی سیستمعامل Linux.
- پشتیبانی از Docker.
بهبودها:
- به روز رسانی به ASP.NET Core 2.2 و Entity Framework Core 2.2.
- افزایش بهینگی با کوچکسازی بخش HTML.
- افزایش کارایی و بهینگی فروشگاه به دلیل به روز رسانی به Entity Framework Core 2.2، نسخه قبلی Entity Framework Core دارای مشکلات جدی در بخش کارایی بود که با این به روز رسانی مشکلات حل شدهاند.
- پردازش سریعتر دستهبندیهای بزرگ (بخش ویژگیهای محصولات برای محصولاتی که ویژگی برای آنها تعریف نشده است لود نخواهد شد).
- پردازش سریعتر تصاویر ذخیره شده در Windows Azure.
- محاسبه سریعتر تخفیفها.
- تولید سریعتر باندلها و فایلهای کوچک شده JS و CSS.
- افزایش سرعت Redis.
- انتقال تمام کتابخانههای JQuery به بخش Footer.
- افزایش کارایی متد "IsCrawler" که به منظور تشخیص موتورهای جستجوگر استفاده میشود.
- پاکسازی حافظه نهان (Cache) سریعتر اتفاق میافتد.
- ساختار افزونه جدید که افزونههای نصب نشده را در حافظه لود نمیکند.
- امکان نصب/حذف چندین افزونه در یک زمان.
- افزونه مالیات Avalara به صورت پیشفرض نصب شده است.
- جلوگیری از عمل bruteforce برای کارتهای اعتباری.
- استفاده از استاندارهای GDPR برای حافظه تغییر کاربران.
- تغییر ساختار قدیمی KendoUI Grid به DataTables library.
- اضافه شدن قابلیت بومیسازی به تاریخهای نسبی.
- اضافه کردن قابلیت فشردهسازی پاسخ استفاده در تنظیمات رابط کاربری.
- اطلاعرسانی از اعمال کد کوپون تخفیف با استفاده از URL به کاربر.
- قابلیت تنظیم قدرت کلمه عبور توسط صاحب فروشگاه و ادمین.
- امکان مشخص کردن پرداخت هزینه اضافی در صورت انتخاب گزینه "دریافت در فروشگاه".
- اضافه شدن راههای سازگار رو به عقب (backward compatibility routes) برای برچسب محصولات.
- اضافه شدن صفحات زبان جایگزین به sitemap.xml.
- اضافه شدن پشتیبانی از favicon برای دستگاههای دیگر (مانند IOS Safari).
- امکان بارگذاری favicon در بخش مدیریت.
- مقدار پیشفرض بخشهای تکمیل سفارش و ویژگیهای محصولات بومیسازی شده است.
- بخش متن شخصیسازی شده در ویژگیهای مشخصات بومیسازی شده است.
- اضافه شدن دارایی متا " og:image:url" به منظور اشتراک فایل در شبکههای اجتماعی.
- به روز رسانی ساختار breadcrumbs با توجه به آخرین تغییرات ساختار.
- عدم ذخیره کلمات عبور "پاک" (clean) برای سیستمهای احراز هویت خارجی.
- به روز رسانی دستورالعملهای تنظیمات افزونه استاندارد PayPal.
- به روز رسانی دستورالعملهای تنظیمات افزونه Facebook.
- امکان فیلتر کردن بر اساس انبار (warehouse) در فهرست گزارش سفارشها.
- اضافه شدن اخطار هنگام اقدام به جعل هویت کاربران غیر فعال.
- اضافه شدن افزونههای QualPay و SendInBlue.
- حذف افزونه WorldPay.
- به روز رسانی افزونه Square به منظور استفاده از API جدید "renew token".
- اضافه شدن لینک به صفحه هشدارها در پیشخوان صفحه مدیریت.
- اضافه شدن reCAPTCHA به صفحه "از یاد بردن کلمه عبور".
- پشتیبانی از چندین reCAPTCHA د یک صفحه.
- نمایش صفحه مربوط به خطای 404 در شرایطی که امکان لود صفحات موضوعات، پست بلاگ و اخبار وجود نداشته باشد.
- افزایش حداکثر طول تنظیمات.
- پشتیبانی از قابلیت فیلتر در صفحات "سبدهای خرید و لیست علاقهمندیها" (بخش مدیریت).
- حذف URL Google+ از بخش شبکههای اجتماعی.
- اضافه شدن برچسبهای ada به منظور کمک به خوانندگان صفحه (screen readers).
- اضافه شدن احتمال استفاده از پایگاه داده redis خاص.
- اضافه شدن قابلیت بررسی اجازه ManageAcl هنگام مدیریت نقش کاربران.
- امکان لود منوی بالای صفحه با استفاده از AJAX (به صورت پیشفرض غیر فعال است).
- اضافه شدن تنظیمات فعال Redis و AzureBlobStorage به ناحیه ابزارک اطلاعات سیستم ادمین.
- ادامه پشتیبانی و ادغام travis-ci.com.
- پشتیبانی از ساختارهای به غیر از DBO.
- بررسی و پردازش مجدد mapping configuration ادمین.
- اضافه شدن آدرس application root برای استفاده در JavaScript.
- اضافه شدن ناحیههای ابزارک جدید.
- اضافه شدن event handler در اسناد هنگام فشردن دکمه enter.
- استفاده از IHttpClientFactory برای ساخت HttpClients به منظور افزایش کارایی.
- کاهش تکرار کد در کدهای منبع.
- باز پردازش مقدار زیادی از کدهای منبع.
- به روز رسانی کتابخانههای شخص سوم به آخرین نسخههای موجود.
- اضافه شدن ویژگی "placeholder" در nop-editor tag helper.
- اضافه شدن دستورالعمل در پایگاه داده به منظور تغییر نوع datetime به نوع datetime2 .
- تغییر پسوند فایلها از .txt به ,csv هنگام export.
- اگر گزینه "media setting" برابر با database باشد، فایلهای منبع فروشگاه توسط مدیر فایل (filemanager) html در پایگاه داده بارگذاری میشوند.
مشکلات و باگهای اصلاح شده:
- مسئله امنیتی XSS حل شده است.
- مسئله امنیتی XEE حل شده است.
- مشکل منو ادمین در حالت نمایش موبایل حل شده است.
- مشکل نمایش ستارههای امتیاز محصولات حل شده است.
- در نظر گرفتن "مقدار بازگشت" برای قسمت سود در صفحه جزئیات سفارش.
- مشکل عدم نمایش تصاویر بعد از تغییر نام محصول حل شده است.
- درخواستهای بازگشت امکان ویرایش نداشتند.
- در افزونه USP، مقدار نرخ هزینه ارسال برای ارسالهای بینالمللی 0 در نظر گرفته شده بود.
- در پنل مدیریت و قسمت ادمین تمام صفحات دارای عنوان نبودند.
- زبان مرورگر به درستی تشخیص داده نمیشد (مختص فروشگاههای چند زبانه).
- امکان باز شدن صفحه افزونهها در محیط ادمین، زمانی که وبسایت www.nopcommerce.com در دسترس نبود وجود نداشت.
- ویرایش ترکیبهای ویژگیها مقادیر را به درستی اعمال نمیکرد.
- مشکل هدایت مجدد به صفحه صحیح در زمانهایی که کاربر قصد ورود با اکانت facebook را دارد و عمل ورود درست انجام نمیشود حل شده است.
- مشکل نمایش هشدارهای تکراری در محیط مدیریت در مواردی که از قابلیت چند-فروشگاهی استفاده میشود حل شده است.
- مشکل لیبل "ارسال رایگان" حل شده است.
- کنترل سطح دسترسی بر تعداد برچسبهای محصولات اعمال نمیشد.
- نقشه سایت، دستهبندیها از تمام فروشگاهها را در خود لود میکرد (مواردی که از قابلیت چند-فروشگاهی استفاده میشود).
- فیلدهای ورودی آدرس با توجه به تنظیمات آدرس نمایش داده خواهند شد.
- مشکل بومیسازی کاراکترهای غیر انگلیسی در بخش "اضافه کردن امتیاز" در پنل مدیریت حل شده است.
- امکان استفاده از reCAPTCHA و proxy به صورت همزمان وجود نداشت.
- نصب ناپکامرس با انتخاب گزینه sample data باعث به وجود آمدن تکرار در UrlRecord میشد.
- مشکلات ویژگیهای آدرس شخصیسازی شده و "آدرس صورتحساب در تکمیل سفارش غیر فعال شده است" حل شدهاند.
- در صورتی که اجازه ایجاد موارد قابل دانلود خالی وجود داشته باشد مشکل به وجود میآید که حل شده است.
- مشکل محاسبه مالیات هنگامی که هزینه محصول 0 است حل شده است.
- لینکهای ادمین "ویرایش صفحه" برای صفحات بلاگ و اخبار به درستی کار نمیکرد.
- هنگامی که نام فایل SEO تصویر تغییر میکرد، تا زمان ریست کردن حافظه نهان (cache)، تصویر به نمایش در نمیآمد.
- هنگامی که یک خبر به یک فروشگاه محدود شده بود، امکان مشاهده خبر در فروشگاههای دیگر نیز وجود داشت.
- مشکل تکرار گزینه انتخاب پیشفرض در فیلد آبشاری انتخاب کشور در صفحه ارسال حل شده است.
- مسئله موجود در magnific popup gallery حل شده است.
- مشکل نمایش سمبل (symbol) یورو حل شده است.
- مشکل robot.txt در صفحه جستجو حل شده است.
- مشکل CSS دکمههای بالا و پایین در مرورگرهای IE و Fierfox حل شده است.
- مشکل ارور خالی کردن حافظه نهان Redis حل شده است.
- مشکل همگامسازی موجودیتهای CustomerCustomerRoleMappings با CustomerRoles حل شده است.
- نام فایل باید بعد از کلیک دکمه "پاک کردن تصویر" در قسمت آپلود تصویر پاک شود.
- مشکل تولید URL تنظیمات در virtual directories برای افزونههای نیازمندی تخفیف حل شده است.
- مشکلات موجود در ایجاد حافظه نهان برای "مشخصات ویژگیها" حل شده است.
- مشکل ارور رنگ پسزمینه نادرست برای تصاویر آپلود شده حل شده است.
- مشکل هدایت مجدد هنگامی که PdtToken برای گزینههای استاندار PayPal تنظیم نشده است حل شده است.