我正在尝试在 Dreamweaver 模板中使用 Get Label TBB 来解析表达式,%%LabelKey%%
并将其替换为存储在发布元数据中的组件中的值。
我正在尝试使用标签来存储绝对 URL(例如http://www.example.com)但是在尝试运行模板时在模板生成器中得到以下内容
错误:ConvertURLToPath() 无法解码 URL:无效转义
DWT 代码类似于:
<a href="%%LogoLink%%" target="_blank" title="%%LogoLinkTitle%%" class="logo">
<img src="@@Page.Publication.Metadata.parent_logo@@" width="95" height="24"
alt="@@parent_logo0.alt@@">
</a>
问题是由%%LogoLink%%
. 如果我删除该模板可以正常工作。为什么 Tridion 试图用这个值做一些事情?我认为它只会尝试解决它,如果它是tridion:href
。
任何帮助表示赞赏。
完整的堆栈跟踪:
引擎:Engine.Transform 中的错误 错误:ConvertURLToPath() 无法解码 URL:Tridion.ContentManager.Session.GetTcmUri(String uri) 在 Tridion.ContentManager.Session.GetObject(String uri) 在 Tridion.ContentManager.Session 的无效转义.IsExistingObject(String uri) 在 Tridion.ContentManager.Templating.Engine.GetObject(Session session, String itemUriOrWebDavUrl) 在 Tridion.ContentManager.Templating.Engine.GetObject(String itemUriOrWebDavUrl) 在 Tridion.ContentManager.Templating.Templates.ExtractBinariesFromHtmlTemplate.ResolveWebDavUrl( Tridion.ContentManager.Templating.Templates.ExtractBinariesFromHtmlTemplate.ResolveTemplateBinaries(Engine engine, Package package, TcmUri baseItemTcmUri, String urlToResolve, String webDavBaseUrl, Engine engine)ExtractBinariesContentWrapper contentWrapper) 在 Tridion.ContentManager.Templating.Templates.ExtractBinariesFromHtmlTemplate.Transform(Engine engine, Package package) 在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.RegisterTemplateBinaries(Package package, String baseItemTcmUri, String templateString) 在 Tridion.ContentManager.Templating .Dreamweaver.DreamweaverMediator.Transform(Engine engine, Template templateToTransform, Package package) at Tridion.ContentManager.Templating.Engine.ExecuteTemplate(Template template, Package package) at Tridion.ContentManager.Templating.Engine.InvokeTemplate(Package package, TemplateInvocation templateInvocation,模板模板)包包)在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.RegisterTemplateBinaries(包包,字符串 baseItemTcmUri,字符串模板字符串)在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.Transform(引擎引擎,模板 templateToTransform,包包)在 Tridion。 Tridion.ContentManager.Templating.Engine.InvokeTemplate(包包,TemplateInvocation templateInvocation,模板模板)的 ContentManager.Templating.Engine.ExecuteTemplate(模板模板,包包)包包)在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.RegisterTemplateBinaries(包包,字符串 baseItemTcmUri,字符串模板字符串)在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.Transform(引擎引擎,模板 templateToTransform,包包)在 Tridion。 Tridion.ContentManager.Templating.Engine.InvokeTemplate(包包,TemplateInvocation templateInvocation,模板模板)的 ContentManager.Templating.Engine.ExecuteTemplate(模板模板,包包)Tridion.ContentManager.Templating.Engine.ExecuteTemplate(模板模板,包包)处的模板 templateToTransform,包包) Tridion.ContentManager.Templating.Engine.InvokeTemplate(包包,模板调用模板调用,模板模板)Tridion.ContentManager.Templating.Engine.ExecuteTemplate(模板模板,包包)处的模板 templateToTransform,包包) Tridion.ContentManager.Templating.Engine.InvokeTemplate(包包,模板调用模板调用,模板模板)
在 Tridion.ContentManager.Templating.Compound.CompoundTemplateMediator.Transform(引擎引擎,模板 templateToTransform,包包)在 Tridion.ContentManager.Templating.Engine.ExecuteTemplate(模板模板,包包)在 Tridion.ContentManager.Templating.Engine.InvokeTemplate(包包,TemplateInvocation templateInvocation,模板模板)
在 Tridion.ContentManager.Templating.Engine.TransformPackage(模板模板,包包)在 Tridion.ContentManager.Templating.Engine.TransformItem(模板模板,IdentifiableObject itemToRender)在 Tridion.ContentManager.Templating。
Tridion.ContentManager.Templating.Debugging.DebugSession.Run() 上的 Debugging.DebuggingEngine.Run( )