Skip to content

Instantly share code, notes, and snippets.

@artemsites
Last active September 30, 2018 14:17
Show Gist options
  • Save artemsites/ae3f74dec17814368148b9ca0b5d345f to your computer and use it in GitHub Desktop.
Save artemsites/ae3f74dec17814368148b9ca0b5d345f to your computer and use it in GitHub Desktop.
Сниппет и чанк для MODx для отображения класса 'active' на активной странице.
<?php
/**
* Created by PhpStorm.
* User: artem
* Date: 27.09.18
* Time: 19:55
* Description:
* Сниппет и чанк для MODx для отображения класса 'active'
* в пункте меню в соответствии с активной страницей,
* для последующей стилизации этого пункта меню.
*
* Snippet and chunk for MODx to display the class 'active'
* in the menu item according to the active page,
* for the subsequent styling of this menu item.
*/
/**
* It is snippet:
* "class-is-active"
*/
$namePage = $modx->resource->get('alias'); // Взяли имя страницы из ресурсов страницы;
$mainNamePage = explode('-', $namePage); // Разбиение schnauzer-female на [schnauzer, female];
$mainNamePage = $mainNamePage[0]; // Вызов именно первого слова: 'schnauzer';
if ($mainNamePage===$hrefName) { // Сверка schnauzer с переданным аргументом hrefName в шаблоне;
return 'active';
}
?>
<!--
It is chank:
[[class-is-active? &hrefName=`index`]]
-->
<div id="menu">
<ul class="top-menu__wrap">
<li><a href="index.html" class="top-menu__link [[class-is-active? &hrefName=`index`]]">Главная</a></li>
<li><a href="about.html" class="top-menu__link [[class-is-active? &hrefName=`about`]]">Информация</a></li>
<li><a href="schnauzer.html" class="top-menu__link [[class-is-active? &hrefName=`schnauzer`]]">Шнауцеры</a></li>
<li><a href="cverg.html" class="top-menu__link [[class-is-active? &hrefName=`cverg`]]">Цвергшнауцеры</a></li>
<li><a href="services.html" class="top-menu__link [[class-is-active? &hrefName=`services`]]">Услуги</a></li>
<li><a href="contacts.html" class="top-menu__link [[class-is-active? &hrefName=`contacts`]]">Контакты</a></li>
</ul>
</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment