1

我已经创建了我的模块,它工作正常。现在我想包含一些自定义布局更新,以便我可以为其加载所需的 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 不包括在内。我错过了什么?

4

2 回答 2

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>

于 2013-10-22T08:49:23.000 回答
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>
于 2013-10-22T08:55:10.237 回答