Umbraco如何使用Umbraco API发布所有未发布的子节点
我发现Umbraco如何使用Umbraco API发布所有未发布的子节点,umbraco,Umbraco,我发现PublishWithSubs()方法只能发布父节点的第一级节点 doc.PublishWithSubs(new User(0)); 如何在一个父节点下发布所有未发布的节点,无论未发布的节点有多深 谢谢在文档类中有一个名为PublishWithChildrenWithResult()的方法。根据源代码,这将递归发布分支下的所有内容: public bool PublishWithChildrenWithResult(User u) { if (Publish
PublishWithSubs()
方法只能发布父节点的第一级节点
doc.PublishWithSubs(new User(0));
如何在一个父节点下发布所有未发布的节点,无论未发布的节点有多深
谢谢在
文档
类中有一个名为PublishWithChildrenWithResult()
的方法。根据源代码,这将递归发布分支下的所有内容:
public bool PublishWithChildrenWithResult(User u)
{
if (PublishWithResult(u))
{
foreach (cms.businesslogic.web.Document dc in Children.ToList())
{
dc.PublishWithChildrenWithResult(u);
}
}
else
{
return false;
}
return true;
}
使用较新的ContentService API,您可以这样做:
var cs = ApplicationContext.Current.Services.ContentService;
cs.PublishWithChildrenWithStatus(nodeToPublish, includeUnpublished:true)
最后一个参数允许您指定是否也要发布未发布的子体。
此方法的命名有点不准确,因为它将发布所有子体,而不仅仅是子体