SharePoint で Web パーツ領域スニペットを追加する
重要
この拡張オプションは、従来の SharePoint エクスペリエンスにのみ使用できます。 コミュニケーション サイトのような、SharePoint Online の最新エクスペリエンスではこのオプションを使用できません。 従来の環境やこれらのブランディング手法を使用することはお勧めしません。
Web パーツ領域は、ページ レイアウトに追加できるスニペットであり、コンテンツ作成者がその領域で Web パーツを追加、編集、または削除できるようにするためのものです。
Web パーツ領域スニペットの概要
Web パーツは、特定の SharePoint 機能を提供するサーバー コントロールであり、Web パーツ ゾーンは、そのゾーンに含まれる Web パーツのレイアウト、動作、およびその他のプロパティを決定するコンテナーです。 たとえば、Web パーツ ゾーンでは、ゾーン内の Web パーツを次のように指定できます。
- 水平レイアウトで配置するか、垂直レイアウトで配置するか。
- タイトル バーや境界線などの共通ユーザー インターフェイス (UI) 要素を表示するかどうか。
- コンテンツ作成者がブラウザーでページを編集するときにカスタマイズできるかどうか。
- Web パーツの個人用ビューを作成するサイトの閲覧者がブラウザーでページを表示するときにパーソナライズできるかどうか。
発行サイトでは、必要な権限を持っているコンテンツ作成者は、ページ ライブラリに存在するページを作成または編集できます。 デザイナーは、ページ レイアウトに Web パーツ ゾーンを追加できます。 コンテンツ作成者がそのページ レイアウトに基づいてページを作成または編集すると、作成者はそのゾーン内の Web パーツを追加、編集、または削除できます。 たとえば、コンテンツ作成者が次のことを行えるように、ページ レイアウトに Web パーツ ゾーンを追加できます。
- コンテンツ検索 Web パーツを使用して、検索クエリの結果を表示します。 作成者は、検索ドリブン Web パーツが Web パーツ ゾーン内に存在する場合に、検索クエリを更新または変更できます。
- メディア Web パーツを使用して、ビデオまたは音声クリップを Web ページに組み込む。
- 概要リンク Web パーツを使用して、簡単に編集、グループ化、または並べ替えることができるハイパーリンクの一覧を作成する。
- 目次 Web パーツを使用して、サイト内のすべてのページを一覧表示し、ページが追加、削除、名前変更、または移動されると必ず自動的に更新されるサイト マップを作成する。
Web パーツ領域を使用する状況
ページ レイアウトに 1 つ以上の Web パーツ ゾーンが含まれている場合、そのレイアウトを使用するすべてのページで Web パーツ ゾーンを使用できます。これにより、作成者はそれらのページに Web パーツを挿入できます。 作成者が Web パーツをページに挿入できるようにする場合は、サイトのユーザーエクスペリエンスに対する制御を減らすことができます。 たとえば、作成者は、閲覧者が現在のページから移動したくないサイトの部分を公開するページに目次 Web パーツを挿入できます。
Web パーツをサイトに表示する方法を完全に制御し、その Web パーツを特定の種類のすべてのページに表示する場合は、Web パーツをページ レイアウトに直接追加します。 Web パーツをサイト内のすべてのページに表示する場合は、マスター ページに Web パーツを直接追加することもできます。
注:
Web パーツ領域は、ページ レイアウト上では使用できますが、マスター ページ上では使用できません。Web パーツ領域は作成者が Web パーツを変更できるようにするためのものであり、作成者は通常はマスター ページを編集しないからです。
ページ レイアウトに Web パーツ ゾーンを追加することもできますが、使用を制限することもできます。 たとえば、Web パーツをゾーンに追加し、そのゾーンのプロパティを設定すると、コンテンツ作成者は既存の Web パーツのプロパティを編集できますが、ゾーンに対して Web パーツを追加または削除することはできません。 Web パーツ ゾーンには、二重の目的を果たすプロパティのセットがあります。 プロパティの 1 つのサブセットを使用して、ページ上の Web パーツのレイアウトと形式を整理できます。 プロパティの別のサブセットを使用して、ゾーン内の Web パーツの変更 (または "ロックダウン") からの追加レベルの保護を提供できます。
サイト上の Web パーツの表示方法をさまざまなレベルで制御するためには、次のことを実行できます。
- マスター ページまたはページ レイアウトに Web パーツを直接追加します。 つまり、コンテンツ作成者は Web パーツを変更できません。
- Web パーツをページ レイアウト上の領域に追加するが、追加する既定の Web パーツのみにその領域を制限する。
- Web パーツ領域をページ レイアウトに追加し、その領域内に表示する Web パーツとその設定方法について、コンテンツ作成者が完全に制御できるようにする。
Web パーツ領域のプロパティで、次のものの変更をコンテンツ作成者に許可するかどうかを指定できます。
- Web パーツの追加、削除、サイズ変更、または移動による、領域内の Web パーツのレイアウト。
- すべてのユーザー用の Web パーツ設定 (Web パーツの共有ビュー)。
- コンテンツ作成者の個人用 Web パーツ設定 (Web パーツの個人用ビュー)。
表 1 に、Web パーツ領域を制限する場合に考慮すべき重要なプロパティを示します。
表 1. コンテンツ作成者を制限するために使用される Web パーツ ゾーン プロパティ
プロパティ名 | 説明 |
---|---|
AllowLayoutChange | 領域内の Web パーツのクローズ、最小化、削除、復元を行えるかどうかを指定します。 False に設定されている場合、ユーザーは、ゾーン内の Web パーツを閉じる、最小化する、削除する、または復元したり、Web パーツを別のゾーンにドラッグしたり、ゾーン内で Web パーツを再配置または移動したりすることはできません。 ユーザーは Web パーツ カタログから Web パーツを追加することもできず、ゾーン内の Web パーツの UI に影響するいくつかのプロパティが無効になります。 このプロパティは、プログラムでレイアウトを変更する機能には影響しません。 True に設定した場合、適切なアクセス許可を持つユーザーはこれらのアクションを実行できます。 |
LockLayout | ゾーン内の Web パーツを追加、削除、サイズ変更、または移動できるかどうかを指定します。 このプロパティは、Web パーツ ページが個人用ビューか共有ビューかに関係なく、同じように機能します。 True に設定した場合、影響を受けるゾーン内の各 Web パーツの特定の Web パーツ プロパティは、Zone (ZoneID)、Part Order (PartOrder)、Visible on Page (IsVisible)、Height (Height)、Width (Width)、Allow Close (AllowRemove)、IsIncluded (Web パーツ メニューの Close コマンド) です。 その他の Web パーツ のプロパティは影響を受けません。 False に設定した場合、Web パーツのプロパティによって、(適切なサイト アクセス許可で) 変更を行えるかどうかが決まります。 |
AllowCustomization | 領域内の Web パーツの共有プロパティ値を変更できるかどうかを指定します。 True に設定した場合、適切なアクセス許可を持つユーザーは、すべてのユーザー用に領域内の Web パーツを変更できます。 False に設定 すると、ユーザーは共有ビューの UI のゾーン内の Web パーツを変更できません。 ただし、Web パーツの [メンテナンス] ページを使用して、プログラムを使用して変更を加えることができます。 |
AllowPersonalization | 領域内の Web パーツの個人用プロパティ値を変更できるかどうかを指定します。 True に設定した場合、適切なアクセス許可を持つユーザーは、領域内の Web パーツに対して個人用の変更を行うことができます。 False に設定した場合は、Web パーツがプライベート Web パーツで、ユーザーに適切なアクセス許可がない限り、ユーザーは UI で Web パーツに個人用の変更を行うことはできません。 |
注:
Web パーツ領域をデバイス チャネル パネル内部に挿入することはできません。 作成者がページに Web パーツを追加できるようにする必要があり、モバイル デバイスに対するページの負荷が問題にならない場合は、リッチ テキスト エディター ページ フィールドをデバイス チャネル パネルに追加し、そこに Web パーツを追加するように作成者に指示します。 Web パーツはデバイス チャネル パネルに直接 (Web パーツ領域なしで) 追加できます。 詳細については、「 方法: SharePoint でデバイス チャネル パネル スニペットを追加する」を参照してください。
Web パーツ領域スニペットを挿入する
すべてのスニペットと同様に、このスニペットをスニペット ギャラリーから追加します。 スニペット ギャラリーに移動するには、まず編集するページ レイアウトを選択します。 Web パーツ ゾーンはページ レイアウトに追加できますが、マスター ページには追加できません。
Web パーツ領域スニペットを挿入するには
発行サイトに移動します。
ページの右上隅で、歯車の形の [設定] アイコンをクリックし、[ デザイン マネージャー] をクリックします。
デザイン マネージャーの左側のナビゲーション ウィンドウで、[ ページ レイアウトの編集] を選択します。
スニペットを追加するページ レイアウトの名前を選択します。
スニペット ギャラリーを開くには、サーバー側プレビューの右上隅で、[ スニペット] をクリックします。
リボンの [デザイン] タブで、[Web パーツ領域] を選択します。
スニペット ギャラリーの右側の [ このコンポーネントについて] の下で、セクション ヘッダーをクリックまたは選択して、プロパティのグループを展開するか、折りたたむかして、必要なカスタム設定を構成します。
[ 重要] という名前のセクションには、この特定のスニペットの動作にとって重要なプロパティが含まれます。 Web パーツ ゾーンの場合、スニペットには一意の ID があります。 スニペットをページ レイアウトにコピーした後で、この ID を再利用しないでください。 別の Web パーツ ゾーン スニペットを追加する場合は、[ 更新 ] を選択して、次のスニペットの新しい ID を生成します。
Web パーツ領域を制限するために必要なプロパティ (LockLayout、AllowCustomization、AllowPersonalization) の説明については、表 1 を参照してください。
注:
スニペット ギャラリーのプロパティ グリッドに、プロパティ名が太字で表示されることがあります。 これらのプロパティの値は、このコンポーネントの既定の設定から変更されていますが、必ずしもデザイナー シナリオに関連しているわけではありません。 つまり、プロパティが太字で表示されていても、シナリオにとって必ずしも重要ではありません。
プロパティを構成した後、[ 更新] をクリックします。 これによって、ページの左側の HTML スニペットが更新され、マークアップにカスタム設定が反映されます。 いつでも [リセット] をクリックして、すべてのプロパティを既定の設定に戻すことができます。
スニペット ギャラリーの左側で、[ HTML スニペット] の下の [ クリップボードにコピー] をクリックします。
HTML エディターで、コンピューター上のマップされたネットワーク ドライブを開き、スニペットを追加するマスター ページまたはページ レイアウトの HTML ファイルを開きます。
詳細については、「 方法: ネットワーク ドライブを SharePoint マスター ページ ギャラリーにマップする」を参照してください。
HTML ファイルの中の、マークアップを表示する場所にスニペットを貼り付けます。
スニペットをページ レイアウトに追加する場合は、スニペットを PlaceHolderMain の内側に貼り付けてください。
class="DefaultContentBlock"
の<div>
を独自のコンテンツに置き換えます。Web パーツを持つ領域を事前作成する場合 (コンテンツ作成者が既存 Web パーツのみ変更可能で、新しい Web パーツを追加できないようにその領域を制限する場合など) は、 タグを表示する場所に Web パーツ スニペットを挿入します。
ページを保存し、デザイン マネージャーでサーバー側プレビューを再表示して、ページが期待どおりに表示されることを確認します。
スニペット マークアップの理解
Web パーツ ゾーン スニペットの最も重要な 2 つの部分は、 ID プロパティと コメントです。 領域ごとに一意の ID を持つ必要があります。 ページ レイアウトに複数の Web パーツ ゾーンを追加する場合は、新しい ID が生成されるように各スニペットをコピーする前に、スニペット ギャラリーで [更新 ] を選択してください。 コメントは 、既定でゾーンに表示する Web パーツに置き換える必要があります。
コンテンツ作成者による領域の使用方法を制御するために使用できるその他のプロパティ ( AllowCustomization、 AllowPersonalization、および LockLayout) を次のコードに示します。
注:
AllowCustomization、AllowPersonalization、LockLayout プロパティは、プロパティ グリッドで既定値を変更した場合にのみ、マークアップに表示されます。
<div data-name="WebPartZone">
<!--CS: Start web part zone Snippet-->
<!--SPM:<%@Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"%>-->
<div xmlns:ie="ie">
<!--MS:<WebPartPages:WebPartZone runat="server" ID="x0e5f5212505f48a9aac43df13eeae4f9" AllowCustomization="True" AllowPersonalization="False" FrameType="TitleBarOnly" LockLayout="True" Orientation="Vertical">-->
<!--MS:<ZoneTemplate>-->
<!--DC: Replace this comment with default web parts for new pages. -->
<!--ME:</ZoneTemplate>-->
<!--ME:</WebPartPages:WebPartZone>-->
</div>
<!--CE: End web part zone Snippet-->
</div>