single.php

include (TEMPLATEPATH . '/searchform.php');
if (have_posts()) : while (have_posts()) : the_post();
the_time('F j, Y'); сентябрь 28, 2006
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 19)
UTW_ShowTagsForCurrentPost("commalist"); Ключевые темы: No Tags
show_post_count(); Просмотров: 56826

the_content();

Иногда, чтобы стимулировать случайного посетителя еще побродить по блогу, стоит показать ему, что у вас еще есть на заинтересовавшую его тему. Если поместить следующий незамысловатый код в шаблон single.php, он выведет десяток постов из той же категории, к которой относится просматриваемый пост:

$posts = get_posts('numberposts=10&category='.$cat);
foreach($posts as $post) :
?><a href="<?php the_permalink(); ?>"><?php the_title();?></a>
<?php
the_excerpt(); 
endforeach; 

UPDATE: Возилась по мелочи с другим блогом и обнаружила, что в нем, в шаблоне Single Post переменная $cat не определена. Насколько я понимаю, причина жалоб в комментариях на то, что написаный выше код не работает, именно в этом. Пока я не разобралась, почему эта переменная так странно работает (возможно, из-за каких-то плагинов). Но вот работающее решение для тех, у кого не получалось:

<?php
foreach((get_the_category()) as $mycat) {
  $posts = get_posts('numberposts=10&category='.$mycat->cat_ID);
  foreach($posts as $post) :?>
    <li><a 
    href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
    <?php
  the_excerpt();
  endforeach;
}
?>

Внимание: если вы имеете обыкновение помещать одну запись в несколько категорий, то этот код выведет по десятку постов из каждой из них. Чтобы такого не случилось, можно сделать так:

<?php
$mycat=get_the_category();
$mycat=$mycat[0];
  $posts = get_posts('numberposts=10&category='.$mycat->cat_ID);
  foreach($posts as $post) :?>
    <li><a 
    href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
    <?php
  the_excerpt();
  endforeach;
?>

Насколько этот текст оказался полезным?
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 19)
comments_template();

Комментарии (28) к записи «несколько постингов текущей категории»

  1. rainyday Says:

    Привет, код или не рабочий или криво написан, т.е. на сайт именно, если это продолжение переменной в single.php то ее там нет или хотя бы намекни где ее искать там, если это отдельный самостоятельный скрипт, то где у него начало? Если есть возможность помоги поставить себе.. у меня WP 2.0.4

  2. nachberlin Says:

    а что конкретно не работает? только что вставила (уже убрала) на этот сайт в single.php этот код, и все прекрасно сработало (за исключением того, правда, что комментарий исчез:-(). это не “продолжение переменной”, это несколько строчек, которые работают as is. Вставлять их лучше после строчек, которые показывают нужный пост в single.php

  3. Владимир Says:

    Спасибо. Впринципе работает. Но выводит так: весь пост повторно, а зетем список других. Вы не дописали символы . Попробую найти причину

  4. Pepsimist Says:

    Убрал the_excerpt();, чтобы остались лишь заголовки, и выводит все нормально, только плюет слюной на категории и тупо выводит просто десять последних. Как бы это поправить?

  5. nachberlin Says:

    Тем, у кого что-то не получалось: посмотрите UPDATE, возможно, он поможет.

  6. Mixa Says:

    Все офигеть работает, только вот у меня получилось вставить его только после комментариев - иначе кроме постов выводились и их комментарии..
    И еще непонятно, как исключить из списка постов на эту же категорию ссылку на сам пост, в котором транслируется анонс?
    И самое главное, что меня интересует, как анонсировать посты ОПРЕДЕЛЕННОЙ категории не в посте, а на СТРАНИЦЕ?

  7. Pepsimist Says:

    Спасибо, список теперь выводится нормально.

    Вот только комменты к оригинальному посту заменяются теми, что относятся к последнему посту из выведенного списка.

    Это как-то можно поправить?

  8. nachberlin Says:

    Pepsimist: в этом случае перед кодом добавьте строчку
    $mainId=$post->ID;
    а после кода
    $post=get_post($mainId);

  9. Pepsimist Says:

    Ага, здорово. Теперь все ништяк! Спасибо!

  10. red4x Says:

    спасибо, все работает!

  11. nik Says:

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

  12. Yantar Says:

    nik: дело в том, что этот скрипт предназначен для отображения на странице с одной записью - то есть либо в шаблоне single.php, либо внутри условия if(is_single())
    если хочется использовать это как-то по-другому - сообщите, как именно

    p.s. я девочка, а не мальчик

  13. nik Says:

    Я хотел сделать так, чтобы в сайдбаре отображались заголовки последних 10 записсей моего блога.

  14. Yantar Says:

    тогда надо либо сайдбар прописывать после вывода основных шаблонов, либо в каждом шаблоне прописывать query_posts соответственно. пример, как это можно сделать, написан тут: http://trampampam.ru/blog/wordpress/query_posts/

  15. nik Says:

    А как прописать сайдбар после вывода основных шаблонов?

  16. Yantar Says:

    я бы не советовала Вам сейчас заниматься этим самостоятельно
    почитайте сначала подробнее про темы для вордпресс - на maxsite.org или slaff.net

  17. 848604 Says:

    thx

  18. Yantar Says:

    rainywill - это уже надо отдельный плагин писать

  19. RainyWill Says:

    Привет, рад такому быстрому ответу )))
    отдельный…. это трудно , прости за вопрос а на основе этого никак такое не сделать? Или ты точно за это браться не будешь? Просто я искал подобный и не нашел под WP.
    Варианта подобного “плагина” тогда уже.. есть два..
    1. как я сказал, рандомно в 2 колонки заголовоки постов с (кол-вом комментариев)
    2. в 1 колонку но с к примеру по 150 символов из поста

    Интересно… и странно что такого нет, оживило бы блог намного, особенно когда записей уже под 300, найти повтор почти невозможно, всегда что - то новое в итоге

  20. Yantar Says:

    мне кажется, наверняка есть уже такие плагины на wp-plugins.net

  21. Yantar Says:

    ну что я могу сказать - учите английский, он очень помогает в жизни :-)
    код должен выглядеть примерно так:

    <code>
    <?php
    $mycat=get_the_category();
    $mycat=$mycat[0];
    global $wpdb;
    $numposts = 5;
    $rand_posts = $wpdb->get_results("SELECT * FROM $wpdb->post2cat,$wpdb->posts,$wpdb->categories WHERE
    $wpdb->post2cat.post_id = $wpdb->posts.ID and $wpdb->post2cat.category_id = $mycat and $wpdb->posts.post_status = 'publish'  and $wpdb->posts.post_type = 'post' ORDER BY RAND() LIMIT $numposts");
    foreach($rand_posts as $post) :
    setup_postdata($post);
    ?>
    <li><a 
        href="<?php the_permalink(); ?>"><?php the_title();?></a></li>
        <?php
      the_excerpt();
      endforeach;
    ?>
    </code>

    (я его не проверяла)

  22. Деревянные окна Says:

    Чёта я ничё не понял…

  23. Andrey Troy Says:

    Можно ли сделать так, чтобы список постов оказывался в ТЕЛЕ статьи, внутри записи? Допустим, это помогло бы увеличить посещаемость сайта, так как в RSS будет приходить статья со списком похожих.

  24. Yantar Says:

    внутри - вряд ли. проще сделать рядом, сразу после, ну и рсс изменить соответствующим образом

  25. Знакомства в Интернете Says:

    Скрипт от Yantar не работает :(

  26. Yantar Says:

    Знакомства в Интернете - ну если мозг под спам заточен, то что тут сделаешь

  27. Okonkina Says:

    Там, где наблюдается высокий уровень городского шума, и вместе с тем есть насущная необходимость “делать надолго, качественно и красиво”, настоящим избавлением стали пластиковые окна, Москва в этом плане исключением не является. Пластиковые окна ПВХ завоевали признание среди самых широких масс населения и стали пользоваться большой популярностью как у простых потребителей, так и у профессионалов - строительных и проектных организаций, и касается это не только таких крупных городов, как Москва, Берлин или Нью-Йорк, а всего мира в целом. Легкие, прочные, удобные в эксплуатации, прекрасно зарекомендовавшие себя с самых разных сторон, пластиковые окна стали необходимым атрибутом комфортной жизни. Строгий четкий контур, устойчивость к погодным явлениям и легкость в уходе сначала сделали пластиковые окна ПВХ идеальной деталью офисного или производственного интерьера, но затем, с совершенствованием технологии их изготовления, они пришли и в жилые дома. И если раньше еще могли оставаться какие-то сомнения по поводу того, пускать или не пускать в дом профили ПВХ, то сегодня их нет - современные пластиковые окна не только красивы и высококачественны, но и абсолютно безопасны в экологическом плане.

    окна жалюзи

  28. отзывы на фильмы Says:

    Отличный скрипт, только хотелось бы чтобы у каждой записи отображался ее картинка (у меня картинки самого поста)… Как прописать цикл?

Есть комментарии?

It sounds like SK2 has recently been updated on this blog. But not fully configured. You MUST visit Spam Karma's admin page at least once before letting it filter your comments (chaos may ensue otherwise).
show_manual_subscription_form();

Subscribe without commenting

endwhile;