مینو علیمحمدی
مینو علیمحمدی
خواندن ۲ دقیقه·۴ سال پیش

اضافه کردن منو به قسمت ادمین ناپ کامرس توسط پلاگین

اضافه کردن منو به قسمت ادمین ناپ کامرس توسط پلاگین
اضافه کردن منو به قسمت ادمین ناپ کامرس توسط پلاگین



منوی‌های ناپ کامرس از فایلی به نام sitemap.config ساخته و تنظیم می‌شود.

src\Presentation\Nop.Web\Areas\Admin

برای انجام اینکار توسط پلاگین، در فایل cs پلاگین اینترفیس IAdminMenuPlugin برای کلاس پلاگین خود پیاده‌سازی کرده و از کد زیر استفاده کنید.

همچنین می‌توانید برای این قسمت از ACL برای مدیریت دسترسی پلاگین استفاده کنید و اینجا قرار دهید.

public class CustomPlugin : BasePlugin, IAdminMenuPlugin { public Task ManageSiteMapAsync(SiteMapNode rootNode) { var menuItem = new SiteMapNode() { SystemName = &quotYourCustomSystemName&quot, Title = &quotPlugin Title&quot, ControllerName = &quotControllerName&quot, ActionName = &quotList&quot, Visible = true, RouteValues = new RouteValueDictionary() { { &quotarea&quot, null } }, }; var pluginNode = rootNode.ChildNodes.FirstOrDefault(x => x.SystemName == &quotThird party plugins&quot); if(pluginNode != null) pluginNode.ChildNodes.Add(menuItem); else rootNode.ChildNodes.Add(menuItem); return Task.CompletedTask; } }

برای ورژن 2.00 تا 3.50 از کد زیر استفاده کنید:

public bool Authenticate() { return true; } public SiteMapNode BuildMenuItem() // SiteMapNode is Class in Nop.Web.Framework.Menu { var menuItemBuilder = new SiteMapNode() { Title = &quotTitle For Menu item&quot, // Title for your Custom Menu Item Url = &quotPath of action link&quot, // Path of the action link Visible = true, RouteValues = new RouteValueDictionary() { {&quotArea&quot, &quotAdmin&quot} } }; var SubMenuItem = new SiteMapNode() // add child Custom menu { Title = &quotTitle For Menu Child menu item&quot, // Title for your Sub Menu item ControllerName = &quotYour Controller Name&quot, // Your controller Name ActionName = &quotConfigure&quot, // Action Name Visible = true, RouteValues = new RouteValueDictionary() { {&quotArea&quot, &quotAdmin&quot} }, }; menuItemBuilder.ChildNodes.Add(SubMenuItem); return menuItemBuilder; }

در کد بالا، باتوجه به کامنت‌ها لازم به جایگزینی مقادیر بسته به نیاز خود دارید. علاوه بر این، کد نحوه ایجاد زیر منو در منوی اصلی که ایجاد می‌کنید را نشان می‌دهد.


ممنون از توجهتون.

منبع :

https://docs.nopcommerce.com/en/developer/plugins/menu-item.html


ناپ کامرسپلاگین نویسی
برنامه‌نویس دات‌نت هستم و با سی‌ام‌اس ناپ‌کامرس آشنایی دارم، سالهاست به صورت تخصصی توسعه‌دهنده این cms باحال هستم! در اکانتم مطالب مربوط به این cms فقط به اشتراک گذاشته می‌شه.
شاید از این پست‌ها خوشتان بیاید