2016년 5월 17일 화요일

사이트코어 CMS 버전 호환성 표

#사이트코어 #호환성 #Compatibility


CMS
6.0
CMS
6.1
CMS
6.2
CMS
6.3
CMS
6.4
CMS
6.5
CMS
6.6
CMS
7.0
CMS
7.1
CMS
7.2
XP
7.5
XP
8.0
XP
8.1
Sitecore Azure [8]
Sitecore Azure 1.0.0-1.0.1------------
Sitecore Azure 1.0.2-1.0.3-----------
Sitecore Azure 1.0.4-1.1.0----------
Sitecore Azure 2.0.0 [1]-----------
Sitecore Azure 3.0------------
Sitecore Azure 3.1------------
Sitecore Azure 7.2-----------
Sitecore Azure 7.5------------
Sitecore Azure 8.0------------
Sitecore Azure 8.1------------[20]
Sitecore Rocks [14]
Sitecore Rocks
Sitecore App Center
Click Tracking 1.0----------
Google AdSense 1.0----------
Google Analytics 1.0----------
Sitecore Tag Management 1.0 [15]-----------
Email Delivery 2.0--[11][11][11]
SPAM Check 1.2-----
Email Preview 1.2-----
Sitecore® IP Geolocation Service 0.9----[7]--------
Sitecore® IP Geolocation Service 1.0-----[7][7]------
Sitecore® IP Geolocation Service 1.1----------
Sitecore® IP Geolocation Service 1.2-----------
Sitecore® IP Geolocation Service [19]------------
Page Preview 1.2-----
Sitecore Campaign Creator [19]
Campaign Creator 1.0-----------[18]-
E-Commerce Services
SEFE 1.1 [2]-----------
SES 1.2------------
SES 2.0 [3]------------
SES 2.1------------
SES 2.2----------
SES 7.5 [17]------------
SES 8.0 [17]------------
SharePoint Integration Framework
SharePoint Integration Framework 1.0---------
SharePoint Integration Framework 1.1------[4]-----
SharePoint Integration Framework 1.2------[4]---
SharePoint Integration Framework 2.0--------
SharePoint Integration Framework 2.1------------
Sitecore Foundry
Foundry 4.0------------
Foundry 4.1------------
Active Directory
Active Directory 1.0.0------
Active Directory 1.0.2------
Active Directory 1.0.3------
Active Directory 1.0.4-----------
Active Directory 1.1---------
Active Directory 1.2---------
Adaptive Print Studio
Adaptive Print Studio 1.0-----------
Adaptive Print Studio 1.1----------
Adaptive Print Studio 1.2----[7]------
Adaptive Print Studio 1.3-----[7]-----
Adaptive Print Studio 1.4 [7]--------
Print Experience Manager
Online Document Generator 1.0 [7]-----------
Rendition Builder 1.0 [7]-----------
PXM Core 8.0--------[7]
Online Document Generator 8.0------------
Rendition builder 8.0-------
Coveo for Sitecore
Coveo for Sitecore 3.0-------
Design Importer
Design Importer 1.0-----------
Design Importer 2.0-----------
Dynamics CRM Campaign Integration
CRM Security Provider----------
Dynamics CRM Integration 1.x-------
Dynamics CRM Integration 2.0 [7]---
Dynamics CRM Integration 2.1---------
Dynamics CRM Integration 2.0: Integration for WFFM [7]--------
Dynamics CRM Integration 2.1: Integration for WFFM----------
Dynamics CRM Integration 2.2: Integration for WFFM------------
ECM/EXM
E-mail Campaign Manager 1.0------------
E-mail Campaign Manager 1.1------------
E-mail Campaign Manager 1.2------------
E-mail Campaign Manager 1.3----------
E-mail Campaign Manager 2.0 [5]------[7]----
E-mail Campaign Manager 2.1 [5]---------
E-mail Campaign Manager 2.2------------
Email Experience Manager 3.0------------
Email Experience Manager 3.1-----------✓ [7]-
Email Experience Manager 3.2------------[7]
Engagement Intelligence
Engagement Intelligence Datamart----------
TARGIT for Engagement Intelligence----------
Insite for Sitecore
SEEE 3.0-3.1--------
Insite for Sitecore 3.2--------
Insite for Sitecore 3.3------------
Komfo Connector
Komfo Connector 1.0------------
Federated Experience Manager [16]
Federated Experience Manager 1.2------------
Federated Experience Manager 1.3------------
Federated Experience Manager 1.4------------
SEO Toolkit
SEO Toolkit 1.1---------
SEO Toolkit 1.2------------
SEO Toolkit 1.3-----[7]----
Sitecore Item Web API [9]
Sitecore Item Web API 1.0-----[7]-----
Sitecore Item Web API 1.2----------
Sitecore Media Framework, Ooyala and Brightcove Connect
Ooyala Connect 1.0------------
Ooyala Connect 1.1-----------
Brightcove Video Cloud Connect 6.4------------
Brightcove Video Cloud Connect 6.5------------
Brightcove Video Cloud Connect 6.6------------
Brightcove Video Cloud Connect 7.0-------[10]-----
Media Framework 1.0-------[7]-----
Media Framework 1.1-------[7]-----
Media Framework 1.2------------
Media Framework 1.3-------[7]-----
Media Framework 1.4-----------
Media Framework 2.0------------
Media Framework 2.1-----------
Sitecore Social Connected [16]
Social Connected 1.1------------
Social Connected 1.2-----------
Social Connected 1.3 [6]-----------
Social Connected 2.0-------[7]-----
Social Connected 2.1--------[12][13]---
Social Connected 3.0------------
Social Starter Kit
Social Starter Kit 6.1-----------
Social Starter Kit 7.0----------
Social Starter Kit 7.6-----------
Social Starter Kit 8.0---------
WFFM
Web Forms for Marketers 1.x-----------
Web Forms for Marketers 2.0-----------
Web Forms for Marketers 2.1--[7]---------
Web Forms for Marketers 2.2------------
Web Forms for Marketers 2.3----------
Web Forms for Marketers 2.4--------[7][7]---
Web Forms for Marketers 2.5----------[7]--
Web Forms for Marketers 8.0-----------[7]-
Web Forms for Marketers 8.1------------[7]


Legend: “-” – not supported; “✓” – supported.

출처: https://kb.sitecore.net/articles/541788

2016년 5월 4일 수요일

Workflow 세팅 Disable 하기

#사이트코어 #Workflow #Versioning

Workflow를 사용하다보면, 빠른 Publishing을 위하여 현재 Workflow가 세팅되어있는 모든 아이템을 Disable 해야하는 경우가 생긴다. 이럴 경우, 템플릿의 "__ Standard Values"를 업데이트 하기보단, .config파일을 수정하여 간단하게 해결할수가 있다.

  1. 먼저, web.config 또는 sitecore.config를 열어, 현재 적용된 사이트의 "enabledWorkflow" attribute의 값을 "false"로 변경한다.

    enableWorkflow="false"
    

  2. 아래의 "workflowProvider" (Master DB) 세팅을 Comment Out 한다.

    <!-- 
        <workflowProvider hint="defer" type="Sitecore.Workflows.Simple.WorkflowProvider, Sitecore.Kernel">
            <param desc="database">$(id)</param>
            <param desc="history store" ref="workflowHistoryStores/main" param1="$(id)"/>
        </workflowProvider>
    -->
    

2016년 3월 25일 금요일

현재 아이템을 사용중인 모든 아이템 찾기

#사이트코어 #FindRelatedItems #Link

모든 페이지들은 적용되어진 템플릿에 의하여 페이지가 생성이 되고, 템플릿의 값이 어떻게 적용되었는지에 따라, 페이지의 적용된 값도 일괄적으로 업데이트가 된다.
간혹, 잘못 적용된 템플릿을 삭제해야하는 경우가 생기며, 그 템플릿을 삭제하기 위해서는 먼저 템플릿이 사용중인 아이템을 삭제 또는 템플릿 정보를 해당 아이템에서 삭제해야지만이 메인 템플릿 아이템을 삭제할수가 있다.

이번 포스트에서는 어느 아이템에서 해당 템플릿을 사용중인지 찾는 방법을 알아보도록 하겠다.


  1. CMS Link DB를 이용하여 찾는 법

    1. "Content Editor"로 이동 후, 삭제하고자 하는 아이템을 선택한다.
    2. 아이템 선택 후, 상위 매인 툴 박스에서 "Navigation" 탭을 선택한다.
    3. "Navigation" 패널에서 "Links" 버튼을 클릭하면, 선택되어진 아이테을 사용중인 아이템 목록들이 나온다.

  2. 코드를 작성하여 찾는 법

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    public Item[] GetReferrers(string itemId)
    {          
        Item item = Sitecore.Data.Database.GetDatabase("master").GetItem(new Sitecore.Data.ID(itemId));
        // 모든 링크된 아이템의 정보를 가져온다
        ItemLink[] itemLinks = Globals.LinkDatabase.GetReferrers(item);
        if (itemLinks == null)
        {
            return null;
        }
        else
        {
            ArrayList items = new ArrayList(itemLinks.Length);
            foreach (ItemLink itemLink in itemLinks)
            {
                // 'Master' DB에 있는 정보를 비교한다.
                if (itemLink.SourceDatabaseName == "master")
                {
                    Item linkItem = Sitecore.Data.Database.GetDatabase("master").Items[itemLink.SourceItemID];
                    if (linkItem != null)
                    {
                        items.Add(linkItem);
                    }
                }
            }
            return (Item[])items.ToArray(typeof(Item));
        }
    }


  3. Powershell 스크립트를 이용하여 찾는 법
    1. 먼저, Sitecore PowerShell를 설치 한 후,
    2. "Content Editor" 또는 "Dashboard"에서 PowerShell Console를 실행시킨다.
    3. 아래의 코드를 PowerShell 스크립트 필디에 넣은 후, "Execute" 버턴을 실행한다.

       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      $props = @{
          InfoTitle = "Referrers"
          InfoDescription = "현재 아이템을 사용중인 모든 아이템을 리스트하여라."
          PageSize = 25
      }
      
      function Get-ItemReferrers {
          $item = Get-Item -Path "/sitecore/your/template/item/path"
          $linkDb = [Sitecore.Globals]::LinkDatabase
          $links = $linkDb.GetReferrers($item)
          foreach($link in $links){
              $linkedItem = Get-Item -Path master:\ -ID $link.SourceItemID
              $linkedItem
          }
      }
      
      $items = Get-ItemReferrers
      $items | Show-ListView @props -Property @{Label="Name"; Expression={$_.DisplayName} },
                  @{Label="Updated"; Expression={$_.__Updated} },
                  @{Label="Updated by"; Expression={$_."__Updated by"} },
                  @{Label="Created"; Expression={$_.__Created} },
                  @{Label="Created by"; Expression={$_."__Created by"} },
                  @{Label="Path"; Expression={$_.ItemPath} }
      
      Close-Window
      

2016년 3월 9일 수요일

Name Value List 타입을 이용하여 데이타소스 만들기

#HowTo #Datasource #GetItem

사이트코어에서 탬플릿을 만들다보면 다양한 템프릿 필드를 선택할수가 있다. 그 중에서 Key와 Value 개념인 "Name Value List" 타입에 대하여 알아보도록 하겠다.

간혹, 데이타소스를 만들는데 있어서, 똑같은 데이타 타입임에도 불구하여, 데이타의 수 만큼 데이타 이이템을 만들어야 하는경우가 있다.

사이트 이름사이트 URL
구글http://www.google.com
야후http://www.yahoo.com
레딧http://www.reddit.com
사이트코어http://www.sitecore.com
......


이럴경우 사이트 각각의 아이템을 만들 필요없이, 템플릿의 "Name Value List"을 선택함으로로써 하나의 데이타소스 아이템에 여러게의 값을 저장할수가 있다. 프로그래밍에서 Array 또는 List와 똑같은 개념이라고 할수있다.



 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var db = Sitecore.Configuration.Factory.GetDatabase("master");
// NameValueType의 필드를 가지고 있는 데이타소스 아이템의 ID 값을 입력하다.
var item = db.GetItem("{8A8E427B-9162-4680-AE69-239217F5B9AB}");
 
//데이타를 초기화하고,
var data = new NameValueCollection();
// 필요한만큼 데이타를 추가한다.
data.Add("name1", "value1");
data.Add("name2", "value2");
data.Add("name3", "value3");
data.Add("name4", "value4");
     
using (new Sitecore.SecurityModel.SecurityDisabler())
{
    item.Editing.BeginEdit();
    try
    {
        //데이타값은 필드 이름을 입력한다.
        //'&'는 값들의 Divider이다.
        item["NameList"] = StringUtil.NameValuesToString(data, "&");
    }
    finally
    {
        item.Editing.EndEdit();
    }
}