如何在管理区域中添加新按钮/链接到产品列表页面?我有一个插件,它将从 nop db 中的产品生成一个 xml 文件,并希望在此页面上添加一个按钮供管理员用户使用。有任何想法吗?
编辑
请注意,我知道我可以更改Views\Product\List.cshtml
以添加额外的 html,但是在编写插件时,我无法更改主应用程序的源代码。我过去通过实现在“编辑产品”页面中添加了新选项卡IConsumer<AdminTabStripCreated>
,我希望在这里可以做类似的事情。如果无法将任何 html 注入产品列表,那么我愿意接受下一个最好的建议。也许是导航菜单上的链接或其他什么?
编辑 2
我刚刚尝试IAdminMenuPlugin
按照这个 Nop 线程实现:
http ://www.nopcommerce.com/boards/t/21123/how-can-i-add-admin-menu-items-from-plugin.aspx
不过似乎不起作用。我什至尝试卸载并重新安装插件。
来自RouteProvider
:
routes.MapRoute("Plugin.Widgets.ZapXml.Generate",
"Plugins/ZapXml/Generate",
new { controller = "ZapXml", action = "Generate" },
new[] { "Nop.Plugin.Widgets.ZapXml.Controllers" }
);
从插件类(继承BasePlugin
和IAdminMenuPlugin
):
public void BuildMenuItem(Telerik.Web.Mvc.UI.MenuItemBuilder menuItemBuilder)
{
menuItemBuilder.Text("Generate Zap XML File");
menuItemBuilder.Url("Plugins/ZapXml/Generate");
menuItemBuilder.Route("Plugin.Widgets.ZapXml.Generate");
}
我放了一个断点,BuildMenuItem
但它永远不会被击中。我究竟做错了什么?