在Magento单页签出页面中添加SSL授权javascript代码
我一直在尝试在一页Magento签出的空白处添加SSL签名机构提供的javscript代码字符串。Magento中的某些东西似乎在签出的第一步之后剥离了javascript代码,但我找不到有问题的代码。还有人注意到这个问题或解决方案吗 我在\app\design\frontend\default\myteme\template\checkout\onepage\progress.phtml的底部添加了JS代码 代码如下所示:在Magento单页签出页面中添加SSL授权javascript代码,javascript,magento,checkout,Javascript,Magento,Checkout,我一直在尝试在一页Magento签出的空白处添加SSL签名机构提供的javscript代码字符串。Magento中的某些东西似乎在签出的第一步之后剥离了javascript代码,但我找不到有问题的代码。还有人注意到这个问题或解决方案吗 我在\app\design\frontend\default\myteme\template\checkout\onepage\progress.phtml的底部添加了JS代码 代码如下所示: <span id="siteseal"><scri
<span id="siteseal"><script type="text/javascript" src="https://seal.godaddy.com/getSeal?sealID=xxx"></script></span>
起初我认为它是隐藏的,但是徽标出现在第一步,但在随后的步骤中消失了,但是“siteseal”范围仍然存在-空的,而进度部分的初始输出是基于PHP的,Magento在您从一步到一步移动时,通过AJAX更新页面的进度部分。这由以下代码处理
#File: skin/frontend/base/default/js/opcheckout.js
reloadProgressBlock: function(toStep) {
var updater = new Ajax.Updater('checkout-progress-wrapper', this.progressUrl, {
method: 'get',
onFailure: this.ajaxFailure.bind(this),
parameters: toStep ? {toStep: toStep} : null
});
},
如果您查看文档,您将看到有一个Magento没有传入的附加选项
evalscript(布尔值;默认为false):是否应计算响应文本中的元素
这意味着当Magento通过Ajax更新页面的该部分时,不会对脚本进行评估,这很可能是您看到所描述行为的原因
为了解决您的问题,我不想将此代码添加到progress.phtml
模板中,而是使用以下布局更新(在local.xml
中,或者在您喜欢的其他地方)
]]>
如果您想让代码位于进度内容之下,只需从布局更新xml中删除
before=“checkout.progress.wrapper”
虽然进度部分的初始输出是基于PHP的,但当您从一个步骤移动到另一个步骤时,Magento会通过AJAX更新页面的进度部分。这由以下代码处理
#File: skin/frontend/base/default/js/opcheckout.js
reloadProgressBlock: function(toStep) {
var updater = new Ajax.Updater('checkout-progress-wrapper', this.progressUrl, {
method: 'get',
onFailure: this.ajaxFailure.bind(this),
parameters: toStep ? {toStep: toStep} : null
});
},
如果您查看文档,您将看到有一个Magento没有传入的附加选项
evalscript(布尔值;默认为false):是否应计算响应文本中的元素
这意味着当Magento通过Ajax更新页面的该部分时,不会对脚本进行评估,这很可能是您看到所描述行为的原因
为了解决您的问题,我不想将此代码添加到progress.phtml
模板中,而是使用以下布局更新(在local.xml
中,或者在您喜欢的其他地方)
]]>
如果您想让代码位于进度内容之下,只需从布局更新xml中删除
before=“checkout.progress.wrapper”
了解您是如何将代码添加到页面的,以及如何将代码在AJAX页面的多个部分中持久化的,这会有所帮助。很好,这正是我回答这个问题所需要知道的。了解您是如何将代码添加到页面的,以及如何在AJAX页面的多个部分中持久化代码。很好,这正是我回答这个问题所需要知道的。