- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个 ISML 模块,并向其传递一个 ProductBO 实例。在提到的模块中,我尝试获取 OutgoingProductLinks 字段,我看到它填充了我在 BackOffice 中定义的正确值,但是当在该字段上调用 isDefined() 时,它返回 false 并且当我尝试在 <isloop>
中使用该字段时标记它记录错误消息:
Loop iterator identifier '#ProductBO:ExtensibleObject:OutgoingProductLinks#' does not specify a valid Iterator.
我正在处理的特定项目基于 app_sf_responsive 示例,因此它使用它的 ViewProduct 管道(它在其他墨盒中未被覆盖)返回 ProductBO 对象,该对象在其他几个地方使用,通常在那里使用的字段可用于 ISML。
以下代码片段始终返回 false:
<isif condition="#isDefined(ProductBO:ExtensibleObject:OutgoingProductLinks)#" >
<h1>Outgoing product links are defined</h1>
<iselse>
<h1 style="color: red;">Outgoing product links are NOT defined </h1>
</isif>
这是我尝试实际使用提到的字段的地方:
<isloop iterator="#ProductBO:ExtensibleObject:OutgoingProductLinks#" alias="ProductLink">
//Code that uses linked products
</isloop>
请注意,ProductBO 和 ExtensibleObject 的 isDefined() 检查都在工作,问题只出现在 OutgoingProductLinks 上
编辑:这是调试器显示产品链接的屏幕截图
最佳答案
添加到 Johannes 的回答。如果你看看这里的演示商店代码,他们是如何做到的:
//get the productlink extension from the productBO
<isset name="ProductBOProductLinksExtension" value="#ProductBO:Extension("ProductLinks")#" scope="request">
//Link type provider : example cross/up sell, replacement
<isset name="LinkTypeProvider" value="#ProductBOProductLinksExtension:LinkTypeProvider#" scope="request">
//get the link by id from provider See ProductLinkConstants
<isset name="LinkType" value="#LinkTypeProvider:LinkTypeByID(PageletConfigurationParameters:ProductLinkType:Name)#" scope="request">
//get a collection of linked productbos
<isset name="ProductBOs" value="#ProductBOProductLinksExtension:AccessibleOutgoingLinksLinkedObjects(LinkType)#" scope="request">
优点是只获取线上产品。
关于intershop - ISML isDefined() 返回 false although object contains value in field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50877992/
在我目前在开发服务器上工作的 Intershop 7.9 项目中,似乎没有监视 ISML 文件的更改。这意味着在看到任何 ISML 更改之前,必须重新构建磁带盒。在我之前参与过的项目(ISH 7.5、
从 ISML 中的属性文件读取属性值的建议方法是什么? 最佳答案 取决于您的属性文件所在的位置。如果您将其放入 /staticfiles/cartridge/config:是的! 您可以从域访问配置对
我需要检查情况: NOW) AND (Product:QLC_Quantity 但是使用这个段似乎是不正确的:
我正在创建一个 ISML 模块,并向其传递一个 ProductBO 实例。在提到的模块中,我尝试获取 OutgoingProductLinks 字段,我看到它填充了我在 BackOffice 中定义的
我是一名优秀的程序员,十分优秀!