Sitecore 如何知道工作流程是否完成(批准状态和发布)
Sitecore How to Know If Workflow process is done (Approved state and published)
我想知道 Workflow 过程是否完成。
我想做的是:
我创建了一个程序集,一旦 Workflow 过程处于最终状态或自动发布工作完成,就执行程序集中的方法。
<?xml version="1.0" encoding="UTF-8"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<events>
<!-- Once Workflow autoPublish is done, do this for CDN -->
<event name="publish:complete:remote">
<handler type="My.Class.Name, Assembly.Name" method="MethodName">
</handler>
</event>
</events>
</sitecore>
</configuration>
我该怎么做?
您在工作流命令下执行的所有操作的工作方式与您在配置文件中的常规管道和处理器的工作方式类似。但在这种情况下,命令是管道,动作是处理器。
因此,要在自动发布命令之后立即执行某些操作,您应该在自动发布命令之后添加另一个命令。此新命令应包含 link 到您要执行的方法。
这取决于你真正想要什么。您是否想知道特定项目已通过工作流程,还是您还想知道异步发布操作已完成?在自动发布之后定义一个额外的动作绝对是最简单的方法。添加事件处理程序也是可能的,但更复杂,因为事件处理程序将为每个项目/站点发布触发。你打算如何区分?
我看到您正在使用 publish:complete:remote 事件,但我想知道 Sitecore 是否使用它。 HtmlCacheClearing 例如在发布中是 运行:end:remote event.
我想知道 Workflow 过程是否完成。
我想做的是: 我创建了一个程序集,一旦 Workflow 过程处于最终状态或自动发布工作完成,就执行程序集中的方法。
<?xml version="1.0" encoding="UTF-8"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<events>
<!-- Once Workflow autoPublish is done, do this for CDN -->
<event name="publish:complete:remote">
<handler type="My.Class.Name, Assembly.Name" method="MethodName">
</handler>
</event>
</events>
</sitecore>
</configuration>
我该怎么做?
您在工作流命令下执行的所有操作的工作方式与您在配置文件中的常规管道和处理器的工作方式类似。但在这种情况下,命令是管道,动作是处理器。
因此,要在自动发布命令之后立即执行某些操作,您应该在自动发布命令之后添加另一个命令。此新命令应包含 link 到您要执行的方法。
这取决于你真正想要什么。您是否想知道特定项目已通过工作流程,还是您还想知道异步发布操作已完成?在自动发布之后定义一个额外的动作绝对是最简单的方法。添加事件处理程序也是可能的,但更复杂,因为事件处理程序将为每个项目/站点发布触发。你打算如何区分?
我看到您正在使用 publish:complete:remote 事件,但我想知道 Sitecore 是否使用它。 HtmlCacheClearing 例如在发布中是 运行:end:remote event.