0

目前我们有一个具有作者和编辑角色的自定义工作流程,当项目达到最终状态时,工作流程将自动发布项目。两个角色都可以通过转到 Presentation -> Aliases 来创建和编辑页面的别名。

问题是,这些用户都不能发布别名更改,因为别名文件夹位于 /sitecore/system/aliases 中,并且只有管理员用户才能看到此文件夹

当项目被批准时,我如何处理与页面相关的别名以自动发布?

4

1 回答 1

1

最简单的解决方案可能是专门为角色添加权限到 /sitecore/system/aliases...?这个过程你是手动做的我拿吗?新别名是否也在通过工作流程?

除此之外,您可以创建一个新的工作流操作来查找项目的引用者,然后发布在 /sitecore/system/aliases 中找到的引用者。

编辑:

Sitecore.Links.LinkDatabase ld = Sitecore.Globals.LinkDatabase;
Sitecore.Links.ItemLink[] links = ld.GetReferers(myItem);

foreach(Sitecore.Links.ItemLink link in links)
{
    Item sourceItem = link.GetSourceItem();
    //if this item is an alias, publish it
}
于 2012-07-31T19:53:07.140 回答