我们用 RenderComponentPresentation
(在Tridion 2009上)渲染内部和外部链接,以便代码库只在一个Dreamweaver模板中。如果我们可以通过一个可选的CSS类来渲染链接,那将会很有帮助。
有什么想法可以做到这一点?
我们用 RenderComponentPresentation
(在Tridion 2009上)渲染内部和外部链接,以便代码库只在一个Dreamweaver模板中。如果我们可以通过一个可选的CSS类来渲染链接,那将会很有帮助。
有什么想法可以做到这一点?
可以在RenderContext中设置一个值,然后在第二个Dreamweaver模板中检索它。
在调用RenderComponentPresentation之前,设置渲染上下文值,如下所示:
@@SetRenderContextVariable("CSSClass","red")@@
您将需要一个C#Fragment或TBB来从渲染上下文中获取变量,并将它们添加到第二个Dreamweaver模板中的包中。一个例子是:
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@@
希望这可以帮助!