サイト定義のアップグレードへの構造的アプローチ

最終更新日: 2010年12月8日

適用対象: SharePoint Foundation 2010

SharePoint Foundation 2010 では、基本的に 2 つの方法を使用して、バージョン間でカスタム サイト定義をアップグレードできます。以前のバージョンでのカスタマイズの内容を新しいバージョンでも機能するように変更する方法と、現在のバージョンに基づいてサイト定義を作成した後で、前のサイト定義をアップグレードする方法です。つまり、新しいサイトに合わせて前の定義を変更することも、インストールされている SharePoint Foundation 2010 サイト定義のコピーを作成し、このコピーを前の定義に合わせて変更することもできます。

第 1 のアプローチ: 既存のカスタマイズの内容を新しいバージョンで機能するように変更する

Windows SharePoint Services 3.0 以降では、サイト定義をカスタマイズする方法が 2 つ用意されています。1 つは、セットアップ ディレクトリに既定でインストールされているサイト定義をコピーしてから変更する方法で、もう 1 つはカスタム フィーチャーを作成し、展開内でアクティブ化する方法です。

最初の方法でサイト定義をカスタマイズする場合、この作業はサイト定義のコピーを使用して行う必要があります (セットアップ ディレクトリにインストールされている既定のファイルは絶対に使用しないでください)。また、サイト定義の名前とテンプレート番号は一意である必要があり、他のテンプレートと競合しないようにします (たとえば、テンプレート番号は、既定のテンプレート番号と競合しないように 10,000 より大きな数値にします)。このアプローチでカスタム サイト定義を作成する方法については、「カスタム サイト定義の作成方法の概要」を参照してください。アップグレードの場合は、アップグレード定義ファイルを使用して、前のファイルを新しいファイルにマップします。

コンテンツと機能をサイト定義に追加する場合は、フィーチャーを使用することをお勧めします。SharePoint Foundation 2010 には、フィーチャーのバージョン管理、および前のバージョンで作成したフィーチャーをアップグレードする機能が導入されています。フィーチャーおよびフィーチャーのアップグレード方法については「フィーチャーの使用」を参照してください。

第 2 のアプローチ: 新しいバージョンでサイトをデザインし、サイト定義を作成する

前のバージョンに基づいてカスタマイズされた Web サイトを完全に機能させるために、対応する現在のサイト定義をできる限り前のサイトに近づけることができます。サイト定義を Windows SharePoint Services 2.0 から Windows SharePoint Services 3.0 にアップグレードする場合は、これが推奨アプローチでした。このアプローチでは、まず、新しいサイト定義を作成してカスタマイズし、前のサイト定義をそのサイト定義で置き換えます。

もう 1 つのアプローチでは、最初にすべての新機能を調べて、これらの機能をできる限りサイトに組み込むようにします (リスト用のコンテンツ タイプの使用や、カスタム ページ用のマスター ページの使用など)。そして、現在のバージョンのサイト定義をテストして、このサイト定義がサイト インスタンスを作成し、適切に動作するかどうかを確認します。問題がなければ、次に、サイトを前のバージョンから現在のバージョンに移行するときに使用するアップグレード定義を作成します。前のサイトの特定の機能を廃止することを選択した場合は、これに代わる現在のバージョンの機能が必要になる可能性があります。たとえば、特定の種類のカスタム リストを廃止する場合でも、少なくともアップグレードをサポートするためのリスト テンプレートの作成が必要になる可能性があります。このため、このアップグレードを開始するには、2010 のサイト定義を使用して、まず、現在のバージョンに適したエクスペリエンスをデザインし、次に、前のカスタマイズの内容を現在のコンテキストの目的の結果に移行するための手段としてアップグレード処理を使用します。

注意

Windows SharePoint Services 3.0 から SharePoint Foundation 2010 にサイト定義をアップグレードするとき、2 つ目のアプローチで説明したように、必ずしも新しいサイト定義またはアップグレードされたサイト定義全体を作成する必要があるとは限りません。これは、SharePoint Foundation フィーチャーを使用することで、開発者がモジュール式のアプローチによってサイト定義を細かくカスタマイズできるからです。SharePoint Foundation 2010 では、ユーザー インターフェイス (UI) を大幅に変更して、マスター ページを簡単に置き換えられないようにする必要がない限り、一般的には、既存のサイト定義 (つまり、前の製品バージョンで開発されたサイト定義) をより安全に変更できます。

関連項目

概念

フィーチャーの使用

その他の技術情報

SharePoint Foundation をアップグレードする