将 iFrame 宏添加到 Umbraco
Add iFrame macro to Umbraco
我正在添加 XSLT 以在 Umbraco 中添加 iFrame。
这是我的 XSLT
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> ]>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxml="urn:schemas-microsoft-com:xslt"
xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets" xmlns:seoChecker.MetaData="urn:seoChecker.MetaData" xmlns:PS.XSLTsearch="urn:PS.XSLTsearch"
exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets seoChecker.MetaData PS.XSLTsearch ">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:variable name="location" select="/macro/location"/>
<xsl:variable name="width" select="/macro/width"/>
<xsl:variable name="height" select="/macro/height"/>
<xsl:template match="/">
<iframe src="{$location}" width="{$width}" height="{$height}" type="text/html" frameborder="0">
Sorry, your browser does not support IFRAMES
</iframe>
</xsl:template>
</xsl:stylesheet>
显然,当我将宏添加到表单和 运行 页面时,它会抛出一个错误
Error reading XSLT file: iFrameContactUs.xslt
我已按照此 link
中的步骤操作
遵循的步骤
- 我首先在umbraco 的开发人员部分创建了一个XSLT 文件。
- 然后我在宏部分(位置、宽度和高度)中将参数添加到相同的 XSLT。
- 现在,我转到设置选项卡,然后导航到页面并将其添加到 html
@Umbraco.RenderMacro("IFrameContactUs", 新 {height="700px", location="url of the page", width="500px"})
但是,当我 运行 代码时,我收到错误提示
Error reading XSLT
谁能告诉我 XSLT 有什么问题以及为什么它没有 运行ning 在我的网站上
版本 7 中删除了 Umbraco 特定的 XSLT 扩展,这就是它失败的原因。
相反,转到开发人员 -> 部分视图宏文件并在那里创建一个。记得在"Create Macro".
里打勾
在文件中插入以下内容:
@inherits Umbraco.Web.Macros.PartialViewMacroPage
<iframe src="@Model.MacroParameters["location"]" width="@Model.MacroParameters["width"]" height="@Model.MacroParameters["height"]" type="text/html" frameborder="0">
Sorry, your browser does not support IFRAMES
</iframe>
将与以前相同的参数添加到实际的宏中,它应该完全按计划工作(而且它甚至简短易读);-)
我正在添加 XSLT 以在 Umbraco 中添加 iFrame。
这是我的 XSLT
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> ]>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxml="urn:schemas-microsoft-com:xslt"
xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets" xmlns:seoChecker.MetaData="urn:seoChecker.MetaData" xmlns:PS.XSLTsearch="urn:PS.XSLTsearch"
exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets seoChecker.MetaData PS.XSLTsearch ">
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:variable name="location" select="/macro/location"/>
<xsl:variable name="width" select="/macro/width"/>
<xsl:variable name="height" select="/macro/height"/>
<xsl:template match="/">
<iframe src="{$location}" width="{$width}" height="{$height}" type="text/html" frameborder="0">
Sorry, your browser does not support IFRAMES
</iframe>
</xsl:template>
</xsl:stylesheet>
显然,当我将宏添加到表单和 运行 页面时,它会抛出一个错误
Error reading XSLT file: iFrameContactUs.xslt
我已按照此 link
中的步骤操作遵循的步骤
- 我首先在umbraco 的开发人员部分创建了一个XSLT 文件。
- 然后我在宏部分(位置、宽度和高度)中将参数添加到相同的 XSLT。
- 现在,我转到设置选项卡,然后导航到页面并将其添加到 html
@Umbraco.RenderMacro("IFrameContactUs", 新 {height="700px", location="url of the page", width="500px"})
但是,当我 运行 代码时,我收到错误提示
Error reading XSLT
谁能告诉我 XSLT 有什么问题以及为什么它没有 运行ning 在我的网站上
版本 7 中删除了 Umbraco 特定的 XSLT 扩展,这就是它失败的原因。
相反,转到开发人员 -> 部分视图宏文件并在那里创建一个。记得在"Create Macro".
里打勾在文件中插入以下内容:
@inherits Umbraco.Web.Macros.PartialViewMacroPage
<iframe src="@Model.MacroParameters["location"]" width="@Model.MacroParameters["width"]" height="@Model.MacroParameters["height"]" type="text/html" frameborder="0">
Sorry, your browser does not support IFRAMES
</iframe>
将与以前相同的参数添加到实际的宏中,它应该完全按计划工作(而且它甚至简短易读);-)