Related posts без плагинов

Потихоньку убираю плагины с блога. В sidebar.php:

<?php if(is_single()){?>
   <div id="related">
       <?php
           $tags = wp_get_post_tags($post->ID);
             if ($tags) {
               echo '<strong>Схожие посты</strong>';
               $first_tag = $tags[0]->term_id;
               $args=array(
                 'tag__in' => array($first_tag),
                 'post__not_in' => array($post->ID),
                 'showposts'=>5,
                 'caller_get_posts'=>1
                  );
              $my_query = new WP_Query($args);
              if( $my_query->have_posts() ) {
                 while ($my_query->have_posts()) : $my_query->the_post(); ?>
                   <p><a href="<?php the_permalink() ?>"
                  rel="bookmark"
                  title="Постоянная ссылка <?php the_title_attribute(); ?>">
              <?php the_title(); ?></a></p>
             <?php
                   endwhile;
                  }
               }
              ?>
            </div>
<?php } ?>

Подглядел тут
Баги — если код вставляется до коментов, то коменты отображаются от другого поста. Либо после вывода вставлять либо ковырять код.

0.00 avg. rating (0% score) - 0 votes

10 комментариев

  • так сплагином же удобней.  ненадо файлы шаблонов засорять кодами пхп

    • зато памяти меньше сьедает

  • Пробовал добавлять в single.php. Работает. Комменты в норме. Только в списке первым все равно выводит текущий пост. Как пофиксить — пока не соображу.

    • Походу ты выводишь после основного loop’a. А первым выводит текущий пост наверно потому, что теги одинаковые, тут по тегам поиск идет. В аргументах попробуй поиграть значениями. У меня вот другая проблема, коменты левые выводятся

  • Ага, спасибо попробую. Про глюк с комментами тоже от кого-то уже слышал. А у самих wprecipes ничего нет по этому поводу?

    • Неа, я отписал там в коментах, пока молчок. Код впринципе рабочий, но либо выводить после коментов и потом через цсс пробовать выводить перед ними, либо забить и всунуть куда-нибудь, например в сайдбар, как я.

  • […] подправил свой код постраничной навигации для вп. Теперь выводится название месяца, если листать […]

  • […] у Александра Волкова, автора отличного блога alexvolkov.ru. Вот этот хак. Но вот беда: если этот хак вставить в шаблон поста […]

  • там в комментах к тому посту рекомендуют вписать wp_reset_query();
    Но у нас правда все равно не заработало.
    Решили проблему сохранением id поста.

    • Golan, я как-то решил, но вот забыл уже как )) Там есть способ сделать в обход основного лупа, т.е. пост ид не перебивается.

css.php