发布父项时,不会发布Sitecore中的某些子项
我的行为真的很奇怪。如果能帮我找到一个解决方案,或者只是给我一个如何找到它的建议,我将不胜感激 我有这样的sitecore项目结构: 以下是几个案例:发布父项时,不会发布Sitecore中的某些子项,sitecore,Sitecore,我的行为真的很奇怪。如果能帮我找到一个解决方案,或者只是给我一个如何找到它的建议,我将不胜感激 我有这样的sitecore项目结构: 以下是几个案例: 更改“链接1”和“横幅” 发布包含所有子项的父项“测试2” 结果:“横幅”更改,“链接1”未更改 二, 更改“链接1”和“横幅” 发布包含所有子项的父项“内容” 结果:“横幅”更改,“链接1”也更改 anubody知道为什么会发生shis吗?为什么“链接1”没有在第一个案例中发布?这是一个已知的错误。或者至少,你描述的症状与我们在这里经
- 更改“链接1”和“横幅”李>
- 发布包含所有子项的父项“测试2”李>
- 结果:“横幅”更改,“链接1”未更改
- 更改“链接1”和“横幅”李>
- 发布包含所有子项的父项“内容”李>
- 结果:“横幅”更改,“链接1”也更改
anubody知道为什么会发生shis吗?为什么“链接1”没有在第一个案例中发布?这是一个已知的错误。或者至少,你描述的症状与我们在这里经历的完全吻合
不幸的是,Sitecore还没有正式发布关于修复的KB文章。您需要打开Sitecore支持票证。作为参考,热修复程序是436732。最后,我能够使用EventHandler For publish:end解决这个问题,如果publish项的类型为“test 2”,则以编程方式启动publich web.config:
<event name="publish:end">
<handler type="YourProject.Infostructure.EventHandlers, YourProject.Infostructure" method="OnPublishEnd" />
</event>
请仔细阅读本疑难解答指南:您很可能会发现此处缺少的内容。哪个版本的Sitecore?我注意到了一些奇怪之处,但还没有时间进行全面调查。在取消选中Sitecore 8中的“发布相关项目”后,我发现这些项目已正确发布,但正如我所说的,我还没有时间调查、复制或提交支持通知单。请访问web db并准确检查test2项目下的内容(检查删除的项目),您应该在test1项目上使用重新发布来修复已删除项目的问题。这是我现在唯一的想法。你有工作流程吗?
public void OnPublishEnd(object sender, EventArgs args)
{
Publisher publisher = Event.ExtractParameter(args, 0) as Publisher;
if (publisher != null && publisher.Options.Mode == PublishMode.SingleItem && publisher.Options.RootItem.TemplateID == IMicrositeLandingPageConstants.TemplateId &&
publisher.Options.Deep)
{
var item =
publisher.Options.RootItem.Children.FirstOrDefault(
i => i.TemplateID == IContentFolderConstants.TemplateId);
if (item != null)
{
//PUBLISH
PublishOptions publishOptions =
new PublishOptions(item.Database,
Database.GetDatabase("web"),
Sitecore.Publishing.PublishMode.SingleItem,
item.Language,
System.DateTime.Now); // Create a publisher with the publishoptions
Publisher publisher2 = new Publisher(publishOptions);
// Choose where to publish from
publisher2.Options.RootItem = item;
// Publish children as well
publisher2.Options.Deep = true;
publisher2.Publish();
}
}
}