静态链接块,如何设置活动类

时间:2013-12-19 18:06:30

标签: jquery css magento

在我的类别列表页面上,我的左侧菜单上有一个带有两个链接的静态块:

1)类别列表页面链接 2)CMS页面的详细信息。

CMS的详细信息页面也会在其左侧菜单上调用完全相同的静态块。

我的问题:

Magento如何在链接的静态块中知道它在列表页面或cms页面上,并在链接中添加一个“active”类,以便我们可以更改“活动”页面的CSS样式正在观看?

我对另一种方法持开放态度,然后我现在已经设置了,如果这使得它更易于管理。

谢谢!

编辑1

链接块(grc_sidebar_links)

<div class="arrow"><a href="/category/a.html">Category A</a></div>
<div class="arrow"><a href="/cata-specs">Specs and Pricing</a></div>

补充工具栏的html(grc_sidebar_spec_summary):

<div class="sidebar_top">{{block type="cms/block" block_id="grc_sidebar_links"}}</div>

然后在该类别中,我对页面进行了以下布局更新:

<reference name="left">
        <block type="cms/block" name="block_sidebar_top" before="-">
            <action method="setBlockId"><block_id>grc_sidebar_spec_summary</block_id></action>
        </block>
    </reference>

然后在CMS页面中,我有以下布局更新:

<reference name="left">
        <block type="cms/block" name="block_sidebar_top">
            <action method="setBlockId"><block_id>grc_sidebar_spec_summary</block_id></action>
</reference>

1 个答案:

答案 0 :(得分:1)

通常,您应该按块类生成链接列表。要了解这一点,请查看 app / design / frontend / base / default / template / catalog / navigation / left.phtml 以及相应的块类。

在app /../ default / layout / catalog.xml中,您可以找到以下条目:

<catalog_category_default translate="label">
        <label>Catalog Category (Non-Anchor)</label>
        <reference name="left">
            <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/>
        </reference>

在块节点内定义块类和模板文件路径。 type属性告诉Magento在哪里找到块类。所以目录/导航指向 app / code / core / Mage / catalog / Block / Navigation.php

getCurrentChildCategories方法生成所有子类别链接的数组,并定义活动链接。

我希望这会对你有所帮助。