最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Sitecore方法:创建自定义工作流程

网站源码admin0浏览0评论

Sitecore方法:创建自定义工作流程

在仅发布项目的场景中,在Sitecore中创建自定义工作流可能很有用。在我的例子中,我需要发布一个子项,然后发布它的父实体,最后在初始子项上发布一个相关项。

分步指南

在中创建一个新的工作流程项目

  1. location / sitecore / system / Workflows /
  2. 模板/ sitecore / templates /系统/工作流程/工作流程

在该项目下,添加两个工作流程状态。

  1. template / sitecore / templates / System / Workflow / State
  2. 草稿状态,确保未选中最终复选框。 
工作流程草案
  1. 发布状态,确保选中最后一个复选框。(这是最终的工作流程状态)
工作流程发布

使用在步骤1中创建的工作流程,设置初始状态。

工作流程
  1. 初始状态应指向在步骤2.1中创建的草稿状态。

在步骤2.2中创建的草稿状态项下,添加工作流命令。

  1. template / sitecore / templates / System / Workflow / Command
  2. 将Next状态字段设置为在步骤2.3中创建的Publish状态。 
工作流程草稿命令

添加发布操作以发布初始项目; 这使用Sitecore内核的发布操作。

  1. 类型应为“Sitecore.Workflows.Simple.PublishAction,Sitecore.Kernel”

发布操作后,添加自定义操作; 就我而言,它的标题是Publish Parent Entity。

工作流程自定义操作
  1. 请注意,Type字符串设置为网站项目中包含的类。
  2. 下面的代码获取正在发布的项目,然后它找到其父项并发布它。
代码语言:javascript代码运行次数:0运行复制
 using Sitecore.Data.Items;
 using Sitecore.Workflows.Simple;
 using Website.Logic.Common.Extensions;
    
 namespace Website.Logic.Common.Workflow
 {
     public class PublishParentEntityAction
     {
         public PublishParentEntityAction()
         {
         }
    
         public virtual void Process(WorkflowPipelineArgs args)
         {
             Item dataItem = args.DataItem;
    
             var parent = dataItem.Parent;
                
             if (parent != null)
             {
                 PublishUtility.PublishItem(parent);                   
             }
         }
     }
 }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2020-08-06,如有侵权请联系 cloudcommunity@tencent 删除内核系统网站sitecore工作流
发布评论

评论列表(0)

  1. 暂无评论