query_posts.jpgБывают случаи когда на главную (или какую нибудь другую) страницу нужно вывести записи только из определенной категории, или вообще только определенные записи. Для этого в WordPress и существует query_posts().

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

Теперь немножко подробнее — для вывода записей в WordPress используется цикл, называемый «The Loop». Обычно он выглядит так:

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
//Тут Ваш код
<?php endwhile; ?>

Если перед циклом «The Loop» поставить функцию query_posts с нужными нам параметрами, то мы добьемся нужного нам результата. Вот пример такого использования:

<?php query_posts('cat=-1,-2,-3'); ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
//Тут Ваш код
<?php endwhile; ?>

Такой код выведет на главную записи из всех категорий кроме категорий с ID 1, 2 и 3.

Ниже преведены еще несколько примеров использования query_posts:

  • query_posts(‘cat=-3’) — Не показывать категорию id которой равно 3;
  • query_posts(‘cat=-1,-2,-3’) — Не показывать категории, id которых равны 1, 2 и 3;
  • query_posts(‘cat=2,6,17’) — Вывести категории с id равным 2, 6 и 17;
  • query_posts(‘category_name=WordPress’) — Вывести категорию с названием «WordPress»;
  • query_posts(‘name=Hello World’) — Вывести один пост с названием «Hello World»;
  • query_posts(‘p=5’) — Вывести один пост, id которого равно 5;
  • query_posts(‘page_id=7’) — Вывести страницу id которой равно 7;
  • query_posts(‘pagename=about’) — Вывести страницу с названием «about»;
  • query_posts(‘cat=18&showposts=5’) — Вывести 5 постов из категории с id=18;
  • query_posts(‘cat=3&orderby=date&order=ASC’) — Вывести посты из категории id которой равно 3, сортировать по дате в хронологическом порядке(DESC — в обратном порядке);
  • query_posts(‘posts_per_page=10’) — Вывести 10 постов на страницу (при значении -1 выводит все посты);
  • query_posts(‘cat=3&year=2008’) — Вывести посты из категории с id=3 за 2008 год;
  • query_posts(‘orderby=rand&showposts=3&cat=3’) — выводин рандомно, т.е. случайно 3 записи из 3 категории;
  • query_posts(‘orderby=rand&showposts=3’) — выводит случайно 3 записи из всех категорий;
  • query_posts(‘meta_key=cars&meta_value=volvo’) — выводит список постов с произвольным полем «cars» и значением этого поля volvo.

Если возникнут какие нибудь вопросы, то обязательно спрашивайте ;-)

h++p://www.wp-info.ru/neskolko-primerov-ispolzovaniya-query_posts/

Категория: PHP, HTML, CSS..., WordPress | Теги:

Оставьте свой комментарий