2013-12-19 2 views
0

В моей категории листинга страниц У меня есть статический блок на левом меню с двумя каналами:статический блок ссылок, как установить активный класс

1) Категория листинга Ссылка на страницу 2) CMS странице деталей ,

Страница CMS деталей вызывает тот же статический блок в левом меню.

Мой вопрос:

Как Magento может знать в статическом блоке ссылок, что он находится на странице листинга или странице CMS, а также добавить класс «активный» по ссылке, чтобы мы могли изменить CSS стиль для «активной» страницы, которая просматривается?

Я открыт для другого подхода, тогда у меня есть настройка, если это делает его более управляемым.

Спасибо!

EDIT 1

Link блок (grc_sidebar_links) HTML

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

боковой панели блока (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> 
+0

Пожалуйста, размещайте код, чтобы посмотреть – tjboswell

+0

@teabos обновлено – thindery

ответ

1

В общем, вы должны генерировать список ссылок по классу блоков. Чтобы получить представление об этом, посмотрите на app/design/frontend/base/default/template/catalog/navigation/left.phtml и соответствующий класс блоков.

В приложении /../ по умолчанию/макет/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, где можно найти класс блока. Так каталог/навигационный указывает на приложение/код/​​ядро ​​/ Mage/Каталог/Block/navigation.php

Метод getCurrentChildCategories формирует массив всех дочерних катогории, а также определяет активную ссылку.

Надеюсь, это вам поможет.

+0

большое спасибо за некоторую информацию! что помогает мне продолжать. – thindery

Смежные вопросы