Активный пункт меню в CS-Cart 4.2.*

В CS-Cart версии 4.2.* существует довольно казусная проблема с выделением активного пункта меню, если пункты прописаны вручную.

Официальная поддержка объясняет что в данном меню можно добавлять класс active путем настройки самого пукнта меню, указав в нем для какого диспетчера прописывать класс активного пункта.

Например, для ссылки вида pages.view&page_id=6 предполагается прописывать диспетчер pages.view. Но в таком случае активный класс пропишется ко всем пунктам меню, имеющим в ссылке дипсетчер pages.view. Для конкретной страницы (page_id=6) решения нет.

Предлагаем использовать "коробочные" возможности шаблонизатора Smarty, используемого в CS-Cart, для решения этой проблемы.

Открываем нужный шаблон меню по адресу emplateslocksmenu
Добавляем в него следующий код перед началом цикла:
{assign var="urlznach" value="http://{$smarty.server.HTTP_HOST}{$smarty.server.REQUEST_URI}"}

А в нужное место добавляем код для прописывания активного класса:
{if $menu.href|fn_url == $urlznach} active{/if}

Все готово.

В следующем уроке мы научим вас как создать свой шаблон для вывода баннеров.