如何在Orchard 1.9

时间:2015-11-05 23:05:19

标签: orchardcms orchardcms-1.9

我正在使用Orchard CMS建立一个网站,并建立了几个分类单元列表。我现在想要在管理菜单上直接创建其中一些列表的链接(因此用户无需浏览分类链接)。

我尝试将管理菜单内容部分添加到分类法类型,然后选中“在管理员菜单上显示”复选框以获取分类,这会创建一个管理菜单链接,但它是指向该定义的链接。分类学 - 不是分类学术语的列表。

我可以通过Orchard.Taxonomies.Admin.GetNavigation(NavigationBuilder)方法以编程方式添加链接(如下所示),但我不想对链接进行硬编码

public void GetNavigation(NavigationBuilder builder) {
        builder
            .AddImageSet("taxonomies")
            .Add(T("Topics"), "4", menu => menu
                .Add(T("Manage Topics"), "1.0", item => item.Action("ListByName", "TermAdmin", new {area = "Orchard.Taxonomies", taxonomyName = "Topics"}).Permission(Permissions.ManageTerms))
            )
            .Add(T("Taxonomies"), "5", menu => menu
                .Add(T("Manage Taxonomies"), "1.0", item => item.Action("Index", "Admin", new { area = "Orchard.Taxonomies"}).Permission(Permissions.ManageTaxonomies))
            );
    }

还有其他方法可以在管理菜单上创建分类列表的链接吗?

由于

1 个答案:

答案 0 :(得分:0)

你做得很好,但是你需要在链接中显示taxonomyIds和他们的名字吗?然后链接看起来应该是这样的:/Taxonomies/TermAdmin?taxonomyId=767,而不是名称。

在Taxonomies AdminController及其视图中,您可以找到一些逻辑。

您应该能够注入taxonomyService并查询创建的分类法及其术语,或者您感兴趣的唯一一个分类法是否通过查询名称来获取其ID。