Sitecore页面编辑器 - 如何扩展页面编辑器项目编辑面板

时间:2013-08-21 06:49:07

标签: sitecore page-editor

需要在页面编辑器,项目编辑部分添加“发布”功能。 (在“更多”部分下是理想的)。我怎样才能做到这一点?

enter image description here

2 个答案:

答案 0 :(得分:10)

首先,您需要创建一个命令类。最简单的版本是:

using System;
using Sitecore.Shell.Applications.WebEdit.Commands;
using Sitecore.Shell.Framework;
using Sitecore.Shell.Framework.Commands;

namespace my.assembly.namespace
{
    [Serializable]
    public class Publish : WebEditCommand
    {
        public override void Execute(CommandContext context)
        {
            if (context.Items.Length != 1)
                return;
            Items.Publish(context.Items[0]);
        }
    }
}

Sitecore.config(或Commands.config)注册新命令:

<configuration> 
  <sitecore>
    <commands>
      <command name="my:publish" type="my.assembly.namespace.Publish,my.assembly"/> 
    </commands>
  </sitecore>
</configuration> 

然后:

  1. 登录 Sitecore Desktop
  2. 将数据库切换为核心
  3. 重复/sitecore/content/Applications/WebEdit/Common Field Buttons/Edit related item
  4. 将新项目重命名为Publish related item
  5. 将此项的Click属性设置为my:publish
  6. 更改项目的其他属性(HeaderIconTooltip
  7. 将数据库切换回 master
  8. 打开页面编辑器并测试新命令(它应该打开标准发布弹出窗口,其中相关项目 ID 作为URL中的参数)。

答案 1 :(得分:2)

我们可以在没有任何代码更改的情况下实现它。

<command name="webedit:publish"  type="Sitecore.Shell.Framework.Commands.PublishItem,Sitecore.Kernel" />

在Commands.config文件中添加以上条目。此文件位于包含文件夹中。

  1. 登录Sitecore Desktop
  2. 将数据库切换到核心
  3. 重复/ sitecore / content / Applications / WebEdit / Common Field Buttons / Edit related item
  4. 将新项目重命名为“发布相关项目”
  5. 将此项目的Click属性设置为chrome:common:edititem({command:“webedit:publish”})
  6. 将数据库切换回主数据
  7. 打开页面编辑器并测试新命令(它应该打开标准的发布弹出窗口,其中相关的项目ID作为URL中的参数)。
  8. 由于

    Fenil