在标题中插入代码 - 但仅限于CMS页面(Magento + Fancybox)

时间:2016-04-26 08:59:12

标签: php jquery magento header fancybox

我需要在一个CMS页面的标题中插入此代码:

<!-- FancyBox Script -->
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<link rel="stylesheet" href="/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" />
<script type="text/javascript" src="/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>

首先我将代码插入标题中(因此它位于网站上的所有页面上),但是添加到购物车功能并不起作用。所以我需要代码只出现在我需要Fancybox的特定CMS页面上。我怎么能这样做?

4 个答案:

答案 0 :(得分:1)

您需要在代码中执行此操作吗?我建议通过ADMIN系统来做这件事。只需切换到代码视图并粘贴即可。

或者,使用此内容创建一个模块和.phtml模板文件,然后使用Layout XML更新将其添加到ADMIN中的页面。

如果您要修改要包含Fancybox的CMS页面,请单击design标签,然后在Layout XML Update部分中包含以下内容:

<reference name="head">
    <block type="core/text" name="fancyboxcode">
        <action method="setText">
            <text>
                <![CDATA[
                <link rel="stylesheet" href="/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" />
                <script type="text/javascript" src="/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
                ]]>
            </text>
        </action>
    </block>
</reference>

答案 1 :(得分:0)

在head.phtml文件中包含具有此条件的脚本

<?php
if(Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms')
{ ?>


 // only if it is a CMS page

// Include your script here 

<?php } ?>

希望它能解决你的问题

答案 2 :(得分:0)

在cms.xml =&gt;中添加以下代码在主题布局文件夹中。

<block type="page/html_head" name="head" as="head">
    <action method="addItem"><type>skin_css</type><name>css/caa-file-name.css</name><params/><if><![CDATA[<!--[if (gte IE 9) | (IEMobile)]><!-->]]></if></action>
</block>

答案 3 :(得分:0)

假设您只想在主页上使用此标题,那么您可以在local.xml中使用主页的处理程序,如

<cms_index_index>
    <reference name="head">
         <block type="core/text" name="cdn.jquery">
            <action method="setText">
                <text>
                    <![CDATA[
                    <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
                    <script type="text/javascript">jQuery.noConflict();</script>
                    ]]>
                </text>
            </action>
        </block>
    </reference>
</cms_index_index>

现在只会在主页上加载