如何自定义 Sitecore 复制操作

问题描述 投票:0回答:1

我正在尝试对复制操作进行自定义。当编辑器进行项目复制操作(右键单击项目>复制>复制到)时,我需要限制所选项目具有两个以上子级别的情况,然后,我需要显示警告/消息“项目复制失败”。你能建议我吗,如何实现这一目标。

image here

只是我想限制子项剩余>2时的操作

events sitecore pipeline
1个回答
0
投票

最好的方法可能是覆盖现有的

Sitecore.Shell.Framework.Commands.CopyTo
命令并实现您自己的
QueryState
逻辑,您基本上只是测试
context.Items[0]
是否具有两个以上级别。显示消息可能会很棘手,因此我建议使用
QueryState
方法返回
Disabled
。在测试您获得的级别时,您可能应该避免遍历项目树。如果有很多项目,遍历项目树可能会非常慢。为此执行一些 Solr 查询。

一旦您拥有自己的

CopyTo
命令,请使用您自己的类修补
type
配置中的
<command name="item:copyto">
属性。

© www.soinside.com 2019 - 2024. All rights reserved.