【发布时间】:2013-08-13 09:06:32
【问题描述】:
如何在管理区域的产品列表页面中添加新按钮/链接?我有一个插件,它将从 nop db 中的产品生成一个 xml 文件,并希望在此页面上添加一个按钮供管理员用户使用。有什么想法吗?
编辑
请注意,我知道我可以更改 Views\Product\List.cshtml 以添加额外的 html,但是在编写插件时,我无法更改主应用程序的源代码。我过去通过实现IConsumer<AdminTabStripCreated> 在“编辑产品”页面中添加了新选项卡,我希望在这里可以做类似的事情。如果无法将任何 html 注入产品列表,那么我愿意接受关于下一个最好的建议。也许是导航菜单上的链接或其他什么?
编辑 2
我刚刚尝试按照这个 Nop 线程实现 IAdminMenuPlugin:
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 中设置了一个断点,但它从未被命中。我做错了什么?
【问题讨论】:
标签: nopcommerce