ルートサイトコレクションまたはサイトコレクションごとにのみスタイルのデプロイ

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/43712

質問

CSS、JavaScript、イメージなどのマスターページやスタイルを展開する方法を知っています。

サイトコレクションスコープ機能によってスタイルライブラリーなどのサイトコレクションにあるすべての要件を展開します。 この機能を有効にすると、このサイトコレクションのスタイルが有効になります。そのため、スタイルライブラリ内の各サイトコレクションにそれらのファイルが作成されます。

しかしMasterPageでは、ルートサイトコレクションのCSS登録やイメージなどをすべて参照することもできます。このように、ルートサイトコレクションの機能のみをアクティブにすると、マスターページが適用されている場合は他のサイトコレクションに影響します。ルートサイトコレクションスタイルライブラリにそれらのファイルを持つだけです。

これを躊躇していますが、もちろんルートサイトコレクションでのみ有効になっているため、ポータル内のファイルの量を減らすことができます... もちろんこれを行うことによって、私はすべてのサイトコレクションのための同じレイアウトとスタイルのどこにでも持っていますが、それも私が達成したいのかの場合もあります。

SO rootサイトコレクションにのみ展開する場合、またはすべてのサイトコレクションは異なる方法で展開する必要がありますか?

役に立ちましたか?

解決

マスターページ、CSS、画像、JSなどを含むブランディング要素を機能(サイトにスコープにしている)を包装しているので、各サイトコレクション(ルートサイトコレクションとサブサイトコレクションで)この機能を有効にすることをお勧めします。 iedomain / sites / subsite1)。この機能には、_catalogs / masterpageアセットを転送するためのモジュールと、スタイルライブラリのアセットを転送するための少なくとも別のモジュールを含める必要があります。 AnyMayを使用しているので、あなたがブランドを更新するときはいつでも、この機能はアセットの更新を処理する必要があり、PowerShellを使用してすべてのサイトコレクションにアップグレードを強制することができます。

はい、これは各サイトコレクションにすべてのブランド要素を含めることを意味しますが、それぞれのサイトコレクションは少なくともMasterPage Assetsを次に含む必要があります。スタイルライブラリの場合は、常にそれらの要素を14回のハイブ(_layouts)に配置できます。あなたのケースで彼らにとって最高の場所になるでしょう。

ルートサイトコレクションのまさにスタイルライブラリアセットのコピーしか持たずたら、マスターページとスタイルライブラリアセットをインストールする別の機能を持つことができます。すべてのサイトコレクションのマスターページ機能を有効にしますが、スタイルライブラリはルートサイトコレクションにのみ1つだけです。次に、マスターページを常にルートサイトコレクションスタイルライブラリのみを参照してください。しかし、あなたがこれを行っているのなら、なぜあなたはそれを使っているのですか、あなたはそれを自分のためにより難しくしています。

これが助けを願っています。

他のヒント

私はここでの問題は、各サイトコレクションが独自の絶縁境界であるため、「ルートサイトコレクションVSその他のサイトコレクション」の問題をクリアすることを信じています。基本的に、サイト収集レベル(例えば、スタイルライブラリの使用)に展開することは推奨されている慣例であり、またサイト収集自体と同じ分離ユニットに従う。

このモデルよりもサンドボックス化されたソリューションを検討した場合も適しています。マスターページの変更、すでに使用されているページレイアウトを変更する必要がある場合は、すべてのサイトコレクションで本当に更新されています。

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top