Сюда обычно чего-то пишут. Но меня ломает...

Вывод всех материалов в блоге на WP списком

Иногда бывает так, что нужно разместить ссылки быстрого доступа на все материалы блога. Это бывает полезно как даже элемент навигации настоящих блогов (для людей). Но особенно важным это становится если вы наполняете свой ГС, заточенный под продажу ссылок в SAPE массой мелкого, но тем не менее многостраничного, контента. Конечно, при этом вы используете плагин автопагинации, например mb_paging, но это уже дело вашего вкуса.

Факт же в том, что в случае, если с главной у вас нет ссылок на все публикации блога, то все не первые страницы таких публикаций улетают на четвертый уровень вложенности. Чтобы этого не происходило, можно  выводить их все виджетом последние публикации (заменив количество 15 в widgets.php). Но это неприятно тем, что ваш сайдбар разраствется но нереальных и неестественных размеров.

Второе решение - вывод  нарезанного на куски html - сайтмапа (со ссылками на каждый кусок с главной, у сапы есть ограничение на количество обрабатываемых ссылок с одной страницы, как вы знаете). Неудобство тут в том, что во первых нет готового решения, а во вторых часть кошерных страниц улетает на 3 уровень вложенности.

Поэтому я слепил из куска кода, выводящего последние публикации поделку, которая выводит все публикации списком с номерами подряд:

<?
if($_SERVER['REQUEST_URI'] == ‘/’) {
$r = new WP_Query(array(’showposts’ => 1000, ‘what_to_show’ => ‘posts’, ‘nopaging’ => 0, ‘post_status’ => ‘publish’, ‘caller_get_posts’ => 1));
if ($r->have_posts()) {
echo “Карта: “;
$IIS = 1;
while ($r->have_posts()) : $r->the_post(); ?>
<a href=”<?php the_permalink() ?>”><?php echo $IIS ?></a>
<? $IIS++;
endwhile;
wp_reset_query();
}
}
?>

Код можно вставлять в Index.php, футер или хидер, как вам удобнее. В данной реализации кода вывод происходит только на главной странице. Результат работы можно наблюдать внизу этой публикации.

Материалы по теме

4 Каментов к статье “Вывод всех материалов в блоге на WP списком”. Оставьте камент »

  1. Камент от Bobre — 2009/12/04 @ 20:16

    Инетересный способ - буду пробоваться

  2. Камент от А. — 2009/12/08 @ 5:37

    Эх. Жалко что только для WP

  3. Камент от Makson — 2009/12/11 @ 12:11

    Не проще карту сайта? И с ув в сапе все в порядке

  4. Камент от Timp — 2009/12/11 @ 13:35

    Проще, если не используете mb_paging
    Кроме того, я стараюсь не лепить все ГС на одной сборке. Чем более по разному выглядят ваши ГС, тем меньше вероятность пакетного бана

RSS поток бредоспама. Трэкбэк адрес

Оставьте камент




Политика комментирования:

Как вы можете заметить, тут нет поля "сайт", бесполезно оставлять бессмысленные каменты ради ссылок.
Однако ссылки в теле комментариев, как, например вот эта, приветствуются и открыты для индексации.
Поэтому комментарии проходят ручную модерацию. Адекватные комментарии обычно апрувятся.

Статьи: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42