在Magento单页签出页面中添加SSL授权javascript代码

在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

我一直在尝试在一页Magento签出的空白处添加SSL签名机构提供的javscript代码字符串。Magento中的某些东西似乎在签出的第一步之后剥离了javascript代码,但我找不到有问题的代码。还有人注意到这个问题或解决方案吗

我在\app\design\frontend\default\myteme\template\checkout\onepage\progress.phtml的底部添加了JS代码

代码如下所示:

 <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页面的多个部分中持久化代码。很好,这正是我回答这个问题所需要知道的。