1
4

2 回答 2

4

这给出了加载当前页面的编辑模式的 URL。将其与快速编辑 URL 进行比较并进行相应调整。

string.Format(
  "{0}default.aspx?id={1}&epslanguage={2}&selectededitpaneltab=1",
  UriSupport.AbsoluteUrlFromUIBySettings("edit/"),
  page.PageLink,
  page.LanguageBranch)
于 2013-04-15T10:04:53.123 回答
0

约翰是绝对正确的。他的回答很好。

我想分享我的最终结果:

  1. 公开创建个人博客。公开我的意思是你真的只是在使用 EPiServers 编辑模式的东西。

    uxCreatePersonalBlog.NavigateUrl = String.Format("{0}EditPanel.aspx?parent={1}&type=82&epslanguage={2}&mode=simpleeditmode",
        UriSupport.AbsoluteUrlFromUIBySettings("edit/"),
        CurrentPage.PageLink,
        CurrentPage.LanguageBranch);
    
    uxCreatePersonalBlog.Visible = CurrentPage.QueryDistinctAccess(AccessLevel.Create);
    
  2. 公开创建博客项目。

    uxCreateBlogItem.NavigateUrl = String.Format("{0}EditPanel.aspx?parent={1}&type=80&epslanguage={2}&mode=simpleeditmode",
        UriSupport.AbsoluteUrlFromUIBySettings("edit/"),
        CurrentPage.PageLink,
        CurrentPage.LanguageBranch);
    
    uxCreateBlogItem.Visible = CurrentPage.QueryDistinctAccess(AccessLevel.Create);
    
  3. 公开编辑博客项目。

    uxEditBlogItem.NavigateUrl = String.Format("{0}Default.aspx?id={1}&epslanguage={2}&mode=simpleeditmode",
        UriSupport.AbsoluteUrlFromUIBySettings("edit/"),
        CurrentPage.PageLink,
        CurrentPage.LanguageBranch);
    
    uxEditBlogItem.Visible = CurrentPage.QueryDistinctAccess(AccessLevel.Edit);
    

请注意,我已经使用mode=simpleeditmode了所有三个按钮。如果您不使用mode=simpleeditmode,您将在保存和发布页面后在标题中看到 EPiServer 编辑模式界面。

epslanguage如果您的网站只有一种语言,则没有必要。我添加它以防万一将来我们决定将其设为多语言。

type是硬编码的。有没有办法以更优雅的方式实现这一点?

于 2013-05-10T10:33:08.887 回答