【问题标题】:static block of links, how to set an active class静态链接块,如何设置活动类
【发布时间】:2014-01-08 10:24:41
【问题描述】:

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

1) 分类列表页面链接 2) CMS详情页。

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

我的问题:

Magento 如何在静态链接块中知道它在列表页面或 cms 页面上,并为链接添加一个“活动”类,以便我们可以更改“活动”页面的 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>

【问题讨论】:

  • 请贴一些代码看看

标签: jquery css magento


【解决方案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 在哪里可以找到块类。所以 catalog/navigation 指向 app/code/core/Mage/catalog/Block/Navigation.php

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

希望对你有帮助。

【讨论】:

  • 非常感谢您提供的一些信息!这有助于我继续前进。
猜你喜欢
  • 1970-01-01
  • 2017-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-31
相关资源
最近更新 更多