Magento - 为模块添加自定义布局更新

时间:2013-10-22 08:41:11

标签: php magento

我已经创建了我的模块,它运行正常。现在我想包含一些自定义布局更新,以便我可以加载所需的JS和CSS文件。

所以我进入了app / code / community / module / relatedbrand / etc / config.xml,并在结束</global>标记下面添加了以下代码。

<frontend>
    <layout>
        <updates>
            <relatedbrand>
                <file>relatedbrand.xml</file>
            </relatedbrand>
        </updates>
    </layout>
</frontend>

然后在app / design / frontend / module / default / layout / relatedbrand.xml中我有以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<layout version="0.1.0">
    <reference name="head">
        <action method="addJs"><script>jquery/jquery.js</script></action>

        <action method="addJs"><script>carousel/carousel.min.js</script></action>
    </reference>
</layout>

但是,当我导航到模块处于活动状态的页面时,不包括carousel.min.js。我错过了什么?

2 个答案:

答案 0 :(得分:2)

你的布局错了。 它应该是

<?xml version="1.0" encoding="UTF-8"?>
<layout version="0.1.0">
    <default> <!-- you are missing this-->
        <reference name="head">
            <action method="addJs"><script>jquery/jquery.js</script></action>

            <action method="addJs"><script>carousel/carousel.min.js</script></action>
        </reference>
     </default>
</layout>

上面的代码应该将js文件添加到您的所有页面。如果您只想要特定页面,请将<default>替换为页面布局句柄 例如,对于产品页面使用<catalog_product_view>,对于客户仪表板使用<customer_account_index>

答案 1 :(得分:0)

我认为您的文件位于正确的位置

skin\frontend\default\default\js 
如果您使用自定义主题或包,则

可能会有所不同。

并将其更改为

<?xml version="1.0" encoding="UTF-8"?>
<layout version="0.1.0">
<default>
    <reference name="head">
        <action method="addJs"><script>jquery/jquery.js</script></action>

        <action method="addJs"><script>carousel/carousel.min.js</script></action>
    </reference>
</default>
</layout>