我是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文件
答案 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)