У меня есть пользовательская боковая панель, которая заполняется списком братьев и сестер текущей страницы. Я хотел бы добавить класс к текущей странице в этом списке, чтобы я мог выделить его в списке. Я создаю боковую панель, как это:
<div class="col-sm-3 col-sm-offset-1 button-column">
<?php
$siblingArgs = [
'child_of' => $post->post_parent,
'hierarchical' => 0,
'parent' => $post->post_parent,
];
$siblingPages = get_pages($siblingArgs);
$currentChildren = get_pages('child_of='.$post->ID);
foreach ($siblingPages as $siblingPage) : ?>
<a href="<?php echo $siblingPage->guid ?>" class="body-button"><?php echo $siblingPage->post_title ?></a>
<?php if($siblingPage->ID == $post->ID && (!empty($currentChildren))) {
echo '<ul class="hidden-list hidden-box">';
foreach ($currentChildren as $child){
echo '<li><a href="';
echo $child->guid.'">';
echo $child->post_title.'</a></li>';
};
echo '</ul>';
};
endforeach; ?>
</div><!--end column-->
Я пытаюсь выяснить самый простой способ добавить класс на текущей странице в списке боковой панели. Любая помощь будет высоко ценится!
Используя JS, вы можете получить URL текущей страницы, затем найти тег привязки в документе (текущая страница) и добавить класс («активный») или любой другой класс, который вам нужен.
$(window).load(function () {
var pathname = window.location.pathname;
$("a[href$='" + pathname + "']").addClass('yourClassNameHere');
});
Ты можешь использовать body_class () в теге вашего тела, например.
<body <?php body_class(); ?>>
он будет генерировать уникальные классы тела в соответствии с текущей страницей:
<body class="page page-id-2 page-parent page-template-default logged-in">
а затем в CSS вы можете сделать свой селектор
.page-id-2 .side_bar_global_class { /* Rules here */ }