the_author_posts не показывает 0

Пробую вывести количество постов у автора, этим кодом

 <?php the_author_posts(); ?>

У пользователей которых есть посты работает корректно, а у пользователей у которых нет постов вместо нуля выдает общее количество постов на всем сайте.

Помогите разобраться, worpress 3.2.1

Шаблон свой, вот ссылка http://sami-s-rukami.ru/author/gavmariya/

По кодексу функция должна использоваться в Loop-е
http://codex.wordpress.org/Function_Reference/the_author_posts

Т.е. она работает для конкретного поста и выводит общее количество постов автора этого поста.
Значит хоть один пост у него есть.

Значит хоть один пост у него есть.

Я использую в шаблоне пользовательские типы сообщений (Работы) , может это из-за них путается. У данного пользователя(ссылка которого указана выше), есть записи в "работах".

P.S. проверил других пользователей у которых нет никаких записей, все равно выводит количество всех записей на сайте.

функция должна использоваться в цикле, The Loop, если цикл выводит саму функцию то только с каким-то постом, значит значение не ноль!
Если использовать вне цикла (как вы) нужно писать условие
если у автора есть посты вывести функцию – если нет постов вывести надпись "постов ноль"

з.ы. и зачем флудить во всех соседних темах не по теме?

функция должна использоваться в цикле, The Loop, если цикл выводит саму функцию то только с каким-то постом, значит значение не ноль!
Если использовать вне цикла (как вы) нужно писать условие
если у автора есть посты вывести функцию - если нет постов вывести надпись "постов ноль"

з.ы. и зачем флудить во всех соседних темах не по теме?

Я еще не очень разбираюсь во всем, вот мой фал author.php:

 <?php get_header(); ?>
        
<div class="cenblok">

<?php global $wp_query;$curauth = $wp_query->get_queried_object();?>

  <div id="userinfo">

 <div id="userava">
<div class="name"><?php echo $curauth->nickname; ?></div>
              <?php  echo get_avatar( $curauth->user_email, '96' ); ?>
                           <div class="name-real"><?php echo $curauth->first_name; ?> <?php echo $curauth->last_name; ?></div>
Статей:  <?php the_author_posts(); ?>
  </div>

<div id="userabout"><?php echo $curauth->user_description; ?></div>


  <div id="other">
        <h3>Cтатьи автора: </h3> 
        <ul>
 <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
          <li>
   <a href="<?php the_permalink() ?>" rel="bookmark" title="Прочитать: <?php the_title(); ?>">
            <?php the_title(); ?></a>
          </li>
 <ul>
    <?php endwhile; else: ?>
        <p><?php _e('Нет статей автора.'); ?></p>

    <?php endif; ?>
  
</div>
</div>
<?php get_sidebar(); ?>
</div>
<?php get_footer(); ?>

подскажите пожалуйста, что мне надо в нем подправить?

так же не интересно чтобы просто исправили – нет понимания происходящего )

<?php if (have_posts()) { ?>
<?php the_author_posts(); ?>
<?php } else {?>
нет постов
<?php }?>
так же не интересно чтобы просто исправили - нет понимания происходящего )

<?php if (have_posts()) { ?>
<?php the_author_posts(); ?>
<?php } else {?>
нет постов
<?php }?>

Спасибо Вам за помощь! Я немного покопавшись нашел такое решение

<?php echo count_user_posts($curauth->ID); ?>

Оба варианта у меня работают

Anonymous
Отправить
Ответ на: