0

我正在使用 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))
            );
    }

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

谢谢

4

1 回答 1

0

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

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

您应该能够注入 taxonomyService 并查询创建的分类法及其术语,或者如果您只对一个分类法感兴趣,则可以通过查询名称来获取其 id。

于 2015-11-06T18:45:19.007 回答