2012-05-03 3 views
11

Можно создать дубликат:
Variable setting in Dreamweaver template in SDL TridionЕсть ли способ передать переменную через вызов RenderComponentPresentation?

Мы используем RenderComponentPresentation (на TRIDION 2009) для визуализации внутренних и внешних связей, так что база кода только один шаблон Dreamweaver. Было бы полезно, если бы мы могли пройти через необязательный CSS-класс для использования при визуализации ссылки.

Любые идеи, как это можно сделать?

+0

Привет, Puf, я пробовал это, и это не помогает моей ситуации. Спасибо, в любом случае. – frontendzzzguy

+0

Это для SDL Tridion 2011 или 2009? Возможно, вы можете обновить свой вопрос, чтобы это отразить. Возможно, вы также можете объяснить, где расположены ваши DWT? Вы пытаетесь передать значение из DWT макета страницы в DWT компоновки компонентов? –

ответ

16

Можно установить значение в RenderContext, а затем получить его во втором шаблоне Dreamweaver.

Перед вызовом RenderComponentPresentation установить рендеринга значение контекста следующим образом:

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

Вам нужно будет иметь C# Фрагмент или 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

@@[email protected]@ 

Надежда это помогает!

+0

Спасибо Крис, я попробую это сейчас и посмотрю, работает ли это. – frontendzzzguy

+2

Если у вас есть доступ к документам SDL Tridion, это подробно описано здесь http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/idheading-359879368, и оно находится в Поваренной книге Tridion по адресу http: // code.google.com/p/tridion-practice/wiki/BuiltInFunctionsForUseInHtmlTemplates –

Смежные вопросы