Если постоянная ссылка равна текущему URL сайта
28 февр. 2013 г., 18:00:36
Просмотры: 13.7K
Голосов: 3
Есть ли способ добавить класс к div, когда текущий URL сайта совпадает с постоянной ссылкой записи?
Мне нужно добавить класс "current" в мое пользовательское меню. Я размещаю ссылки на записи в элементах списка через цикл, и для каждой ссылки хочу проверить, совпадает ли постоянная ссылка с текущим URL страницы. Если они совпадают, нужно добавить класс "current".
Что-то вроде:
<?php $currentUrl = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>
<?php if ( $currentUrl == the_permalink() ) { echo ' class="current"'; } else {} ?>
Вместе с циклом:
<?php $currentUrl = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>
<?php query_posts('orderby=name'); ?>
<?php while (have_posts()) : the_post(); ?>
<li>
<a <?php if ( $currentUrl == the_permalink() ) { echo ' class="current"'; } else {} ?>
href="<?php the_permalink() ?>">
<?php the_title() ?>
</a>
</li>
<?php endwhile; ?>
<?php wp_reset_query(); ?>

ElBrm
157
Все ответы на вопрос
1
1
Я бы сделал что-то проще, используя ID:
<?php $current_id = $post->ID; ?>
<?php query_posts('orderby=name'); ?>
<?php while (have_posts()) : the_post(); ?>
<li>
<?php $current_class = ( $current_id == $post->ID ) ? 'class="current"' : ''; ?>
<a <?php if ( $current_class ) echo $current_class; ?> href="<?php the_permalink() ?>">
<?php the_title() ?>
</a>
</li>
<?php endwhile; ?>
<?php wp_reset_query(); ?>
У меня не было времени проверить код, надеюсь, это поможет.

Simon
1.22K
28 февр. 2013 г. 18:18:40
Похожие вопросы
2
ответов
1
ответов