magento 1.9.1.0 local.xml无法正常工作

时间:2015-04-09 03:06:20

标签: php html css xml magento

我是magento的新手,我正在尝试创建自定义主题。我在app / design / frontend / customize / main / layout上创建了一个local.xml。我现在面临的问题是local.xml无法正常工作。我的目标是删除一些徽标并包含css和js文件。我还在系统上声明要使用的主题和皮肤。这是我的代码..

<?xml version="1.0"?>
<layout>
    <default>
        <remove name="paypal.partner.right.logo"></remove>
        <remove name="bml.center.logo"></remove>
        <reference name="head">
            <action method="addJs">
                <type>skin_js</type>
                <name>js/jquery.bxslider.min.js</name>
            </action>
        </reference>
    </default>
</layout>

如何使local.xml正常工作?

由于

EDIT :::

系统忽略local.xml文件

2 个答案:

答案 0 :(得分:1)

<remove>标记也应位于<reference name="block_name">标记内。还可以使用<action method="addItem">添加外观js文件。

答案 1 :(得分:1)

首先确定您的布局是否正常工作。放在<remove name="header" />

之类的东西

然后你在<action method="addJs">中有一个错误。添加JS是某个类Block中的函数。如果您搜索它,您可以找到以下内容:

public function addJs($name, $params = "")
{
    $this->addItem('js', $name, $params);
    return $this;
}

这意味着您的案例中的函数只能获得javascript文件名。

        <action method="addJs">
            <name>js/jquery.bxslider.min.js</name>
        </action> 

在此方法中,您还可以看到此函数调用方法addItem。这意味着您可以使用

        <action method="addItem">
            <type>skin_js</type>
            <name>js/jquery.bxslider.min.js</name>
        </action>

当你使用jQuery库时 - 你需要添加noConflict()函数让jQuery和magento原型库 - 原型一起工作。

创建新脚本或只添加到以下内容:

jQuery.noConflict();

不要忘记,如果你在标题中包含javascript代码 - 你需要将其包装到<script></script>

然后你需要确定,脚本的路径是正确的。查看您的页面源代码并找到附加脚本的位置,并检查它们是否可用。

最后的建议。用一些特定的句柄替换句柄<default>(例如基于module_controller_action)