我不认为这是一个真正的JS错误,但症状与JS有关。我有一个带有SCP(简单可配置产品)的Magento 1.7.0.2安装,可以100%按我想要的那样工作。在我早期的开发中,我在SCP模块{1}中为一个特定文件添加了一些方法。
在SCP模块内部使用这些方法一切正常,但我现在意识到我真的应该在本地代码池中创建一个额外的模块来扩展SCP并将其他方法放在那里。所以我创建了Bendart_Matrix。我从SCP的app/code/community/OrganicInternet/SimpleConfigurableProducts/Catalog/Model/Product/Type/Configurable.php
中删除了3种方法并将它们放在我自己的模块Configurable.php
中。虽然页面仍然加载,但似乎存在一些JS错误,这些错误最终与app/code/local/Bendart/Matrix/Catalog/Model/Product/Type/Configurable.php
JS对象无法正确创建有关。使用Product
方法创建它并不像我的方法是SCP的一部分那样。
我无法找到原因,为什么会这样,所以我创建了我的模块的一些要点(Configurable.php,config.xml和Bendart_Matrix.xml)以及来自SCP的相同文件。再次,如果我禁用或删除我的模块并将方法切换回SCP文件,它的工作原理。不可思议?
SCP config.xml:https://gist.github.com/4327015
SCP模块声明XML:https://gist.github.com/4327012
SCP Configurable.php(减去我文件中的方法:https://gist.github.com/4326996
我的config.xml:https://gist.github.com/4326988
我的模块声明XML:https://gist.github.com/4326986
我的Configurable.php(只是相关方法):https://gist.github.com/4326909
任何帮助或建议都值得赞赏,因为我想要正确地做到这一点,并从SCP模块中删除我的方法,但似乎有一些我错过的依赖或什么?
答案 0 :(得分:1)
根据您发布的信息,我认为最可能的问题是您在布局更新中进行了更改,删除了所需的模板。在这种情况下,您似乎正在正确扩展模块并且通常与模板相关的JS错误。
P.S。今天早上我们注意到,如果有人从愿望清单页面向他们的购物篮中添加了一个可配置的产品,SCP就会无法正常运行(它可以添加可配置的和简单的,这对您来说无关紧要,但我们的自定义导出和adminhtml更新导致问题)。如果您启用了愿望清单,则应牢记这一点。
答案 1 :(得分:0)
好的,我已经解决了一个问题,感谢@Cags。
我注意到,在scpoptions.phtml上转换模板提示时,与我的实时工作版本相比,它没有被包含在内。我添加了以下行(取自simpleconfigurableproducts.xml
)
<reference name="product.info.options">
<action method="setTemplate"><template>catalog/product/view/scpoptions.phtml</template></action>
</reference>
这修复了有关Product.Options的所有JS警告以及我遇到的任何其他警告。一旦我开始选择自定义选项等,它还确保产品价格正确更新。
现在,最后一个问题,当我加载产品页面时,在选择ANYTHING之前,价格显示为0.00。一旦我选择下拉价格“开始”并且它从那里起作用,它似乎是初始页面加载。我已经将模板文件与我的实时网站进行了比较(但是没有我的模块),所以再次与包含我的模块有关,但是什么?
干杯。