2012-05-03 7 views
11

Mögliche Duplizieren:
Variable setting in Dreamweaver template in SDL TridionGibt es eine Möglichkeit, eine Variable durchzugeben, wenn RenderComponentPresentation aufgerufen wird?

Wir verwenden RenderComponentPresentation (auf Tridion 2009) interne und externe Links zu machen, so dass die Code-Basis in nur eine Dreamweaver-Vorlage ist. Es wäre hilfreich, wenn wir eine optionale CSS-Klasse zum Rendern der Verknüpfung übergeben könnten.

Irgendwelche Ideen, wie dies getan werden könnte?

+0

Hallo Puf, ich habe das ausprobiert und es hilft meiner Situation nicht. Danke trotzdem. – frontendzzzguy

+0

Ist dies für SDL Tridion 2011 oder 2009? Vielleicht können Sie Ihre Frage aktualisieren, um dies zu berücksichtigen. Vielleicht können Sie auch erklären, wo sich Ihre DWTs befinden? Versuchen Sie, einen Wert von einem Seitenlayout-DWT an einen Komponentenlayout-DWT zu übergeben? –

Antwort

16

Es ist möglich, einen Wert im RenderContext festzulegen und ihn dann in der zweiten Dreamweaver-Vorlage abzurufen.

Vor dem Aufruf gesetzt RenderComponentPresentation einen Kontextwert wie folgt angezeigt:

@@SetRenderContextVariable("CSSClass","red")@@ 

Sie ein C# Fragment oder TBB haben müssen, um die Variablen aus dem Render Kontext zu erhalten und sie in den zweiten zum Paket hinzufügen Dreamweaver-Vorlage. Ein Beispiel wäre:

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); 
} 

Sie sollten dann in der Lage sein, die Variablen innerhalb des Pakets für den Zugriff auf die Standard-Dreamweaver-Notation

@@[email protected]@ 

hoffe, das hilft!

+0

Danke Chris, ich werde das jetzt ausprobieren und sehen, ob es funktioniert. – frontendzzzguy

+2

Wenn Sie Zugriff auf die SDL Tridion-Dokumentation haben, finden Sie diese hier http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/idheading-359879368. Sie finden sie im Tridion Cookbook unter http: // code.google.com/p/tridion-practice/wiki/BuiltInFunctionsForUseInHtmlTemplates –

Verwandte Themen