我想在站点核心更改页面位置时更改它。我使用事件 OnItemSaved。我有一个问题。如何从此页面 ( Article_Date
) 获取字段并更改页面位置。
我有这样的页面:
- 2012
- 2012年的文章
- 2013
如果我将文章日期更改为 2013 年,我想在类别中查看此页面2013
你应该使用MoveTo()
方法:
protected void OnItemSaved(object sender, EventArgs args)
{
if (args == null)
return;
Item pageToMove = Event.ExtractParameter(args, 0) as Item;
Item item2013 = pageToMove.Database.GetItem("/sitecore/content/...PathTo2013");
pageToMove.MoveTo(item2013);
}
假设你有结构
- 2012
- Article 1
- Article 2
- Article 3
- ...
- 2013
- Article m
- Article n
移动代码如下所示:
protected void OnItemSaved(object sender, EventArgs args)
{
if (args == null)
return;
Item pageToMove = Event.ExtractParameter(args, 0) as Item;
Item item2013 = pageToMove.Database.GetItem(pageToMove.Parent.Parent.Paths.FullPath+ "/" + DateTime.Now.Year);
pageToMove.MoveTo(item2013);
}