2015년 4월 7일 화요일

Sitecore 아이템 정보 가져오기 (Code)

#FYI #ItemInformation

 해당 코드들은 새로운 프로젝트에서 sublayout을 만들때 유용하다.
Sitecore class를 쓰기위해서는 반드는 Sitecore.Kernel.dll 레퍼런스를 프로젝트에 추가하여야 한다.


현재 page editor (xEditor)에서 선택되어진 아이템의 정보 가져오기:

Sitecore.Data.Items.Item contextItem = Sitecore.Context.Item;


선택되어진 아이뎀 정보 가져오기:
만약 해당 아이템이 존재하지 않던지, 또는 현재 유저가 선택되어진 아이템에 접근 권한이 없을시에는 Null값 또는 throw exception이 리턴된다.

Sitecore Content Item Class: Sitecore.Data.Items.Item
Sitecore.Data.Database master = Sitecore.Configuration.Factory.GetDatabase("master");
Sitecore.Data.Items.Item myItem = master.GetItem("/sitecore/content/Home/myItem");


템플릿 아이템 정보 가져오기:
­
Sitecore Template Item Class: Sitecore.Data.Items.TemplateItem 

// 템플릿 폴더 정보 가져옴
Sitecore.Data.Items.TemplateItem item = master.GetTemplate(Sitecore.TemplateIDs.Folder);


시스템 아이템 정보 가져오기:

Sitecore Item Class: Sitecore.Data.Items.Item 

// 레이아웃 정보가져옴
Sitecore.Data.Items.Item layoutsItem = master.GetItem(Sitecore.ItemIDs.Layouts);


미디어 아이템 정보 가져오기:
­
Sitecore Media Item Class: Sitecore.Data.Items.MediaItem 

// 선택되어진 경로의 미디어 파일정보 가져오기
Sitecore.Data.Items.Item myItem = master.GetItem("/sitecore/content/Media Library/Images/Logo.png");