Hus*_*pes 4 dreamweaver templating tridion tridion-2011
我们有一个复合CT,它输出其中一个组件的代码字段.
CT的梦想编织部分如下:
<!-- TemplateBeginRepeat name="Component.HTMLCode" -->
@@Component.HTMLCode@@
<!-- TemplateEndRepeat -->
Run Code Online (Sandbox Code Playgroud)
但是,此CT在页面上显示代码字段,而不是转换为HTML.
例如:如果代码字段的值为 - >
<div align="center" id="loginapp"></div>
那么在页面上显示相同的值而不是解析.
在页面源代码中,输出为" < div align =" center"id =" loginapp"></div> ;"
我知道如果我们使用C#就可以解决这个问题.但有没有办法使用Dreamweaver来阻止特殊字符的转换?
您应该使用dwt将代码发布到服务器,我的意思是为每个代码创建新的dwt,然后将代码粘贴到dwt中.您可以将此dwt与emply组件或资源类型组件一起使用.
或者如果您想使用文本字段,请尝试以下tbb代码.在模板的末尾添加此tbb.
public override void Transform(Engine engine, Package package)
{
Regex objExp = new Regex(@"&#\d+;", RegexOptions.IgnoreCase);
Regex objDecExp = new Regex(@"[^0-9]", RegexOptions.IgnoreCase);
this.Initialize(engine, package);
string strPackage = package.GetValue("Output");
strPackage = unescapeHTML(strPackage);
strPackage = objExp.Replace(strPackage, delegate (Match match)
{
string strInput = match.ToString();
strInput = objDecExp.Replace(strInput, "");
int intValue = Convert.ToInt32(strInput);
char strChar = (char)intValue;
return strChar.ToString();
});
strPackage = strPackage.Trim();
Item objOutput = package.CreateStringItem(ContentType.Html, strPackage);
package.PushItem("Output", objOutput);
}
private string unescapeHTML(string strInput)
{
StringBuilder strOutput = new StringBuilder(strInput);
strOutput.Replace(""", """);
strOutput.Replace(" ", " ");
strOutput.Replace("&", "&");
strOutput.Replace("'", "'");
strOutput.Replace("<", "<");
strOutput.Replace(">", ">");
strOutput.Replace("¡", "¡");
strOutput.Replace("¢", "¢");
strOutput.Replace("£", "£");
strOutput.Replace("¤", "¤");
strOutput.Replace("¥", "¥");
strOutput.Replace("¦", "¦");
strOutput.Replace("§", "§");
strOutput.Replace("¨", "¨");
strOutput.Replace("©", "©");
strOutput.Replace("ª", "ª");
strOutput.Replace("¬", "¬");
strOutput.Replace("­", "­");
strOutput.Replace("®", "®");
strOutput.Replace("¯", "¯");
strOutput.Replace("°", "°");
return strOutput.ToString();
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
875 次 |
最近记录: |