2

構造グループに基づいて異なるパブリケーションターゲットを設定できますか?したがって、私のパブリケーション[07 Global English]に2つの構造グループがある場合、次のようになります。

1) My Website
2) My Mobile

したがって、ユーザーが「マイWebサイト」からページ/構造グループを公開しようとすると、公開ターゲット「WebisteLIVE」と「Webサイトステージング」が表示されますが、同じユーザーが「マイモバイル」構造グループから公開しようとすると、表示されません。上記の出版物のターゲットを参照してください。代わりに、「モバイル-ライブ」と「モバイル-ステージング」を取得します。

上記のシナリオが可能かどうかを提案してください

ありがとう。

よろしくお願いします、

MS

4

3 に答える 3

3

デフォルトのWebサイトの隣に、モバイルWebサイトの兄弟パブリケーションを作成することを強くお勧めします。そうすれば、コンテンツマネージャーの機能を模倣する必要はありません。特に、すぐに使用できる標準のブループリントを模倣する必要はありません。

于 2012-07-19T07:02:56.107 に答える
2

これについてはArjenに同意します。説明するシナリオは、Publishing Securityモデルをハッキングして、PublicationsではなくStructureグループに適用するのではなく、別のPublicationとBluePrintingで解決する必要があります(設計どおり)。

しかし、構造グループに基づいて関連性のないターゲットを非表示にするUI拡張機能を試すというRobの回答の次に、他の唯一のオプションは、公開トランザクションからアイテムを削除するカスタムリゾルバーを作成することだと思います。

メモリが適切に機能する場合、SDL Tridion 2009ではカスタムリゾルバーがすでに可能でしたが、安全上の理由から、このソリューションはSDL Tridion 2011のみに対応しています(動作していることがわかっています)。

IResolverカスタムリゾルバーは、メソッドを介してインターフェイスを実装するクラスですResolve()。アイテムを削除するリゾルバーのサンプルコードは次のようになります。

public void Resolve(IdentifiableObject item, ResolveInstruction instruction, PublishContext context, Tridion.Collections.ISet<ResolvedItem> resolvedItems)
{
   List<ResolvedItem> itemsToRemove = new List<ResolvedItem>();
   foreach (ResolvedItem resolvedItem in resolvedItems)
   {
      // check if resolved item belongs here
      if (MyResolvedItemCheck(resolvedItem.Item.Id))
      {
         itemsToRemove.Add(resolvedItem);
      }
   }
   // remove all items that we need to discard
   foreach (ResolvedItem itemToRemove in itemsToRemove)
   {
      resolvedItems.Remove(itemToRemove);
   }
}

リゾルバーコードはおそらくUI拡張機能よりも記述が簡単で安価ですが、PublicationsやBluePrintingを使用するよりもコストがかかると思います(現在のSDL Tridionライセンスにブループリントの制限が含まれている場合でも)到達しました)。メソッドでかなりのコーディングを行う必要がありMyResolvedItemCheck()、発行者が選択したターゲットによっては、この方法で発行トランザクションが空になり、編集者が不明確になる可能性があります。

于 2012-07-19T08:35:23.117 に答える
1

パブリケーションにパブリケーションターゲットを設定できるのは、私が言うよりも経験豊富な人だけだと思います。

ただし、4つのターゲットすべてをパブリケーションに追加し、親構造グループのTCM IDがモバイル/Webサイト用に構成されたIDと一致するかどうかに基づいて、ターゲットを非表示にする拡張機能を作成できる場合があります。これはハックになるでしょうが、私はお勧めしません。

于 2012-07-19T05:56:47.283 に答える