Вести список статей
Здравствуйте! Буду очень благодарен за помощь. Вывожу списки статей на странице автора для различных категорий. Вот код для вывода одной категории:
<h2>Стихи</h2> <?php query_posts('category_name=stihi'); ?> <?php while (have_posts()) : the_post(); ?> <ul><li><a href="<?php the_permalink(); ?>"> <?php the_title(); ?> </a> </li></ul> <?php endwhile; ?>Как сделать, чтобы не отображался заголовок списка, если у автора нет статей данной категории. И второй вопрос: как вывести один простой список ссылок всех статей автора с ссылками на категорию? Большое спасибо! Было бы ещё лучше, если я смог показать списки категорий с ссылками статей автора, в каждом из которых отображалась бы ссылка подкатегории. Возможно ли использовать в любом из этих случаев постраничную навигацию.
Написал так (с показом категории без списка):
<h2>Стихи</h2> <?php query_posts('category_name=stihi'); ?> <?php while (have_posts()) : the_post(); ?> <ul><li><a href="<?php the_permalink(); ?>"> <?php the_title(); ?> </a> <span><?php the_time('d-m-y') ?></span> <span><?php $cat = get_the_category(); echo $cat[0]->cat_name; ?></span></li></ul> <?php endwhile; ?>
Как можно реализовать постраничную навигацию?
Если я правильно понял ваш вопрос, то примерно вот так:
// задаем нужные нам критерии выборки данных из БД $args = array( 'posts_per_page' => -1, 'cat' => 'stihi' ); $query = new WP_Query($args); if (!empty($query->post_count)) { echo 'Название категории'; // Цикл if ($query->have_posts()) { while ($query->have_posts()) { $query->the_post(); echo '<li><a href="' . get_the_permalink() . '">' . get_the_title() . '</a> '; // получим категории $cat = wp_get_post_categories(get_the_ID, array('fields' => 'all')); // выводим категории foreach ($cat as $val) { echo $val->name . '<br>'; $category_link = get_category_link($val->term_id); echo '<a href="' . esc_url($category_link) . '">' . $val->name . '</a>'; } echo '<li>'; } } else { // Постов не найдено } /* Возвращаем оригинальные данные поста. Сбрасываем $post. */ wp_reset_postdata(); }
Код не тестировал.
По пагинации уже были вопросы на данном сайте.
Спасибо большое! Категории появились, но абсолютно всех авторов. Мне же нужно на странице автора показать список его статей. Или я что-то не то сделал. Буду думать.

3-6 строчки в моем примере
$args = array( 'posts_per_page' => -1, 'cat' => 'stihi', 'author' => 99 // 99 - это id пользователя/автора );
Спасибо большое! Однако несколько неудобно прописывать идентификатор. Может быть как-то иначе можно вывести простой список статей автора на странице автора с указанием категорий для каждой ссылки? У меня есть страница авторов со списком авторов с аватарами и биографией, с которой я перехожу на страницу конкретного автора — вот на этой странице и хотелось бы иметь простой список всех статей этого автора с ссылками и указанием категории рядом с каждой ссылкой. Простите, я не очень силён в PHP.

id автора можно получить автоматически, есть специальные функции,
$curauth = (isset($_GET['author_name'])) ? get_user_by('slug', $author_name) : get_userdata(intval($author)); $args = array( 'posts_per_page' => -1, 'cat' => 'stihi', 'author' => $curauth->ID // - это id пользователя/автора )
данные код должен быть в шаблоне author.php
Спасибо большое! В шаблон автора я и вставляю. Вставил Вашу функцию, но всё равно почему-то не получается. Не буду больше Вас беспокоить — попробую сначала понять.