Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 如何将外部jQuery添加到Magento<;头/>;通过CMS?_Xml_Magento_Content Management System - Fatal编程技术网

Xml 如何将外部jQuery添加到Magento<;头/>;通过CMS?

Xml 如何将外部jQuery添加到Magento<;头/>;通过CMS?,xml,magento,content-management-system,Xml,Magento,Content Management System,在Magento安装中,我试图将xml插入到主页的布局更新xml中。我已经有一些xml在那里工作,但我想添加一个jQuery脚本来运行我的幻灯片。我将它放在page.xml中(并计划在某个时候将其移动到我的local.xml),它在那里工作,但它破坏了产品页面上的“添加到购物车”功能。因此,我想我应该合并到主页上,并将其放入布局更新XML中。由于某种原因,它没有通过 <reference name="head"> <action method="addJs"><sc

在Magento安装中,我试图将xml插入到主页的布局更新xml中。我已经有一些xml在那里工作,但我想添加一个jQuery脚本来运行我的幻灯片。我将它放在page.xml中(并计划在某个时候将其移动到我的local.xml),它在那里工作,但它破坏了产品页面上的“添加到购物车”功能。因此,我想我应该合并到主页上,并将其放入布局更新XML中。由于某种原因,它没有通过

<reference name="head">
<action method="addJs"><script>jquery/jquery-1.7.1.noConflict.min.js</script></action>
<action method="addJs"><script>folder/slider.js</script></action>
</reference>

jquery/jquery-1.7.1.noConflict.min.js
文件夹/slider.js
你知道为什么它会在my page.xml中工作而不是在这里吗

下面是page.xml中的嵌套思想

<default translate="label" module="page">
    <label>All Pages</label>
    <block type="page/html" name="root" output="toHtml" template="page/3columns.phtml">
        <block type="page/html_head" name="head" as="head">
            <action method="addJs"><script>prototype/prototype.js</script></action>

所有页面
prototype/prototype.js

您可以执行以下操作:

将javascript添加到local.xml中

<layout version="0.1.0">
<default>
   <reference name="head">
      <action method="addJs"><script>jquery/jquery-1.7.1.min.js</script></action>
      <action method="addJs"><script>jquery/carouFredSel.js</script></action>
   </reference>
</default>
</layout>

jquery/jquery-1.7.1.min.js
jquery/carouFredSel.js
然后制作一个自定义主页模板(参考1column.phtml),从CMS中为主页选择此模板

将以下内容放在“设计”选项卡的主页“XML布局更新”部分。 这是我的设置,我从主页上删除整个原型脚本是因为我不想要

<reference name="head">
<action method="removeItem"><type>js</type><script>prototype/prototype.js</script></action>
<action method="removeItem"><type>js</type><script>prototype/validation.js</script></action>
<action method="removeItem"><type>js</type><name>scriptaculous/builder.js</name><params/></action>
<action method="removeItem"><type>js</type><name>scriptaculous/effects.js</name><params/></action>
<action method="removeItem"><type>js</type><name>scriptaculous/dragdrop.js</name><params/></action>
<action method="removeItem"><type>js</type><name>scriptaculous/controls.js</name><params/></action>
<action method="removeItem"><type>js</type><name>scriptaculous/slider.js</name><params/></action>
<action method="removeItem"><type>js</type><name>lib/ccard.js</name><params/></action>
<action method="removeItem"><type>js</type><name>varien/menu.js</name><params/></action>
<action method="removeItem"><type>js</type><name>varien/js.js</name><params/></action>
<action method="removeItem"><type>js</type><name>mage/translate.js</name><params/></action>
<action method="removeItem"><type>js</type><name>varien/form.js</name><params/></action>
<action method="removeItem"><type>skin_js</type><script>js/prototype.formalize.min.js</script></action>
<action method="removeItem"><type>skin_css</type><name>css/formalize.css</name><params/></action>

jsprototype/prototype.js
jsprototype/validation.js
jsscriptaculous/builder.js
jsscriptaculous/effects.js
jsscriptaculous/dragdrop.js
jsscriptaculous/controls.js
jsscriptaculous/slider.js
jslib/ccard.js
jsvarien/menu.js
jsvarien/js.js
jsmage/translate.js
jsvarien/form.js
skin_jsjs/prototype.formalize.min.js
skin_csscss/formalize.css

另外,不要创建特定的noConflict页面,只需将运行良好的jQuery脚本放在末尾即可

例如,我的:

jQuery&&define(“jQuery”,[],function(){return f}})(窗口);var$jQuery=jQuery.noConflict()


另外,yu应该在root
js
目录中创建
jquery
文件夹,而不是在skin folder
js
目录中。

对我来说很好。这些js文件放在哪里?对于主页,你是指CMS页面主页吗?您是否将其放置在文本区域中,最初包含注释代码非常感谢您的回复。非常有用。您对local.xml的代码建议有效,但我不知道如何将其应用于主页。当它加载到产品页面时,“添加到购物车”按钮不起作用(结帐时可能会有其他东西中断)。这是我用来引用local.xml
中的两个外部jquery脚本的内容,但它适用于所有页面。全部都在这里
jquery/jquery-1.7.1.min.js folder/slider.js
因此,忘记local.xml,只需将jquery脚本从CMS放入主页,如
action method=“addItem”
,但不要删除特殊的主页布局
home.phtml
。另外,不要忘记,
js
skin\u js
之间存在差异
skin_js
是皮肤文件夹javascript目录,其他一个根目录javascript目录。OK。谢谢你抽出时间!我还是装不上。以下是我在布局更新XML中的代码:
jquery/jquery-1.7.1.min.js文件夹/slider.js footer\u供应商
。看起来,即使无法获得正确的.js文件,它也会构建链接