Как вывести список постов в каждой категории

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

Для этого нужно создать шаблон страницы, и в него встроить этот код:

 'name',
  'order' => 'ASC'
   );
$categories=get_categories($cat_args);
  foreach($categories as $category) {
    $args=array(
      'showposts' => -1,
      'category__in' => array($category->term_id),
      'caller_get_posts'=>1
    );
    $posts=get_posts($args);
      if ($posts) {
        echo '

Категория: term_id ) . '" title="' . sprintf( __( "Посмотреть все посты в категории %s" ), $category->name ) . '" ' . '>' . $category->name.'

'; foreach($posts as $post) { setup_postdata($post); ?>

<a href="" rel="bookmark" title="Прямая ссылка: ">

Этот код выведет список в виде:
Категория1
Пост1
Пост2
Пост3
Категория2
Пост3
Пост4
Пост5
Категория3
Пост6
Поск7
Пост8

Однако следует помнить, что чем больше постов, тем больше и запросов к базе данных, которые создаст этот код. Поэтому, чтобы избежать большой нагрузки на хостинг, нужно пользоваться плагинами кэширования. Так же не стоит списывать со счетов и специальные плагины, которые могут быть хорошей альтернативой этому коду. Некоторые их плагинов, создающие список постов по категориям:

Автор tiaurus 2182 Articles
Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

1 Kомментарий

  1. можете нормально код написать? Он не работает у вас, нет открывающих и закрывающих тегов пхп

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*