问题描述
我的目标是在发布时解锁媒体项目。
我添加了以下发布项目处理器:
<publishItem>
<processor type="MyCompany.Website.Modules.Foundation.EditorEnhancements.Processors.UnlockMediaItemOnPublish,MyCompany.Website" resolve="true"
patch:after="processor[@type='Sitecore.Publishing.Pipelines.PublishItem.PerformAction,Sitecore.Kernel']"/>
</publishItem>
在 UnlockMediaItemOnPublish.cs 中,我解锁源项目和目标项目(如果当前用户锁定了它):
public override void Process(PublishItemContext context)
{
if (context.Action != PublishAction.PublishVersion)
return;
var targetItem = context.PublishHelper.GetTargetItem(context.ItemId);
var sourceItem = context.PublishHelper.GetSourceItem(context.ItemId);
if (sourceItem.Paths.IsMediaItem
&& sourceItem.Locking.IsLocked()
&& sourceItem.Locking.Getowner() == Sitecore.Context.GetUserName())
{
using (new Securitydisabler())
{
sourceItem.Locking.Unlock();
if (targetItem.Locking.IsLocked())
{
targetItem.Locking.Unlock();
}
}
}
}
该项目已解锁,但内容编辑器中的图标并未消失。 有没有办法触发这个图标的更新?
(Sitecore 9.0 版)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)