从Magento Modern Theme中删除无关的JS文件 - ccard.js在每个页面上,但仅在结帐时使用

时间:2014-07-17 15:43:03

标签: javascript xml magento external

Magento是一只狗。我认为很清楚。我的任务是让它成为现在的狮子狗的灰狗。为此,我必须删除在每个页面上加载的一些JS文件,并仅在必要的页面上加载它们。

一个例子是lib / ccard.js。这是一个信用卡验证脚本,仅用于onepagecheckout billing.phtml文件。我可以将page.xml中的行注释掉以从所有页面中删除它,但我无法找出有效的XML来将其加载到onepagecheckout区域。

我在checkout.xml的“One page checkout main layout”区域下添加了一行,但这只会导致购物车崩溃。

<reference name="root">
        <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
        <action method="addJs"><script>lib/ccard.js</script></action>
    </reference>

如果有人能特意告诉我如何做到这一点会非常棒!

1 个答案:

答案 0 :(得分:0)

我不建议你做你想做的事情。是的,Magento很大,并且可以进行一些优化,但是在您认为可能不需要的页面上删除JS文件可能会导致您遇到问题。如果您有第三方插件或进行Magento升级,要求特定的JS文件位于特定页面上,但它没有加载,您将遇到错误。

让Magento更快地运行从服务器优化开始。如果您的服务器未配置为正确运行Magento,则无论您对前端文件执行什么操作,它都会加载缓慢。

我建议只在系统&gt;下的配置中组合JS文件。配置&gt;开发人员&gt; JavaScript设置并将合并JavaScript文件设置为Yes


要回答关于为什么XML引用不起作用的问题,因为方法addJs是属于head块的方法,而不是根。您可能想要使用它:

<reference name="head">
    <action method="addJs"><script>lib/ccard.js</script></action>
</reference>