2мая
2007

Как вывести на главной странице количество записей, отличное от других страниц

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

Нестандартная задача решается стандартными средствами WordPress, путем замены всего пары строчек php-кода в шаблоне. То есть никакие плагины для этого нам не понадобятся.

Итак, например, чтобы на главной странице вывести только один пост, открываем файл шаблона index.php, находим следующие строки (в дефолтном шаблоне находятся в самом верху):

  1. <?php if (have_posts()) : ?>
  2.  
  3.   <?php while (have_posts()) : the_post(); ?>

и смело заменяем их вот таким кодом:

  1. <?php $top_query = new WP_Query('showposts=1'); ?>
  2.   <?php if(have_posts()) : ?>
  3.     <?php while($top_query->have_posts()) : $top_query->the_post(); $first_post = $post->ID; ?>

Здесь в параметре showposts=1 указывается количество выводимых записей.

Вот, собственно, и все.

Теперь лишь осталось в настройках WordPress (Настройки -> Чтение) указать нужное количество постов для отличных от главной страниц сайта.

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

Эта запись опубликована в Среда, 02 мая 2007 г. в рубрике Нестандартные задачи.

автор: Dimox