RenderComponentPresentation
(Tridion 2009 で) 内部リンクと外部リンクをレンダリングして、コード ベースが 1 つの Dreamweaver テンプレートだけに含まれるようにします。リンクをレンダリングするときに使用するオプションの CSS クラスを通過できると便利です。
これを行う方法はありますか?
RenderComponentPresentation
(Tridion 2009 で) 内部リンクと外部リンクをレンダリングして、コード ベースが 1 つの Dreamweaver テンプレートだけに含まれるようにします。リンクをレンダリングするときに使用するオプションの CSS クラスを通過できると便利です。
これを行う方法はありますか?
RenderContext で値を設定してから、2 番目の Dreamweaver テンプレートで値を取得することができます。
RenderComponentPresentation を呼び出す前に、レンダー コンテキスト値を次のように設定します。
@@SetRenderContextVariable("CSSClass","red")@@
レンダー コンテキストから変数を取得し、2 番目の Dreamweaver テンプレートのパッケージに追加するには、C# フラグメントまたは TBB が必要です。例は次のとおりです。
var renderContext = engine.PublishingContext.RenderContext;
foreach (string key in renderContext.ContextVariables.Keys)
{
var value = renderContext.ContextVariables[key] as string;
var item = package.CreateStringItem(ContentType.Text, value);
package.PushItem("RenderContextVariable."+key, item);
}
これで、標準の Dreamweaver 表記を使用して、パッケージ内の変数にアクセスできるようになります。
@@RenderContextVariable.CSSClass@@
お役に立てれば!