@stichii

Как сделать вывод тайтлов записей в левом сайдбаре?

Добрый день! Подскажите пожалуйста, как правило настроить шаблон single.php чтобы в левой части было меню из тайтлов статей. Эти названия появлялись динамически без каких либо манипуляций. Т.е. добавил пользователь статью и тайтл статьи сразу появился в левом меню. Вот примерно как должно бытьb9d0b3301ba64d46a493f4975a74dbbc.png
Сейчас настроен вывод так
<?php
				$categories = get_the_category($post->ID);
				if ($categories) {
					$category_ids = array();
					foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id;
					$args=array(
						'post_type' => 'post', 
						'post_status' => 'publish',
						'category__in' =>$category_ids );


					$my_query = new wp_query($args);
					if( $my_query->have_posts() ) {
						echo '<div  class="single_post_show">';
						echo '<ul class="nav_single">';
						while ($my_query->have_posts()) {
							$my_query->the_post();
							?>

								<li>

									 <a href="<?php the_permalink();?>"><?php the_title();?></a>

								</li>

							<?php
						}
						echo '</ul>';
						echo '</div>';
					}
					wp_reset_query();
				}
				?>

насколько правильно такое решение? И еще как настроить, чтобы добавлялся класс для тайтла активной статьи?Чтобы можно было задать стили для активной ссылки.
  • Вопрос задан
  • 85 просмотров
Пригласить эксперта
Ответы на вопрос 1
Вам нужно выводить все статьи?

Запросите их через get_posts()
<?php
global $post;
$posts = get_posts(array('numberposts' => -1,));
foreach($posts as $item){ setup_postdata($item);
    echo $item->post_title;
    echo ($item->ID === $post->ID) ? 'Текущий пост' : '';
}
wp_reset_postdata();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы