Несколько примеров использования query_posts

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

Теперь немножко подробнее - для вывода записей в 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.

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

Подробное описание функции query_posts смотрите здесь.

Предыдущие записи из рубрики `Настройка WordPress`

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

kama, 25.07.2011 в 02:21

Игорь, создайте альбом, поместите туда все галереи и используйте шоткод для вывода альбома.

ОтветитьОтветить
Тимофей, 25.07.2011 в 08:54

Здравствуйте!
Подскажите пожалуйста, нигде не нашел ответа.
Мне нужно вывести по одной записи из скажем 10 рубрик. Типа ленты новостей... (featured articles)
Насколько я понимаю вп берет все 8 записей из первой категории...

ОтветитьОтветить
Book, 15.08.2011 в 00:29

а как вывести на главную нужные посты а дальше все остальные

ОтветитьОтветить
Тимофей, 15.08.2011 в 12:57

Book, Вариантов много
можешь через ID прописать в wp_query_post
Можешь слайдер поставить
Можно просто в посте поставить "прилепить"

ОтветитьОтветить
Саш, 02.09.2011 в 16:34

Здраствуйте!
Подскажите пожалуйста как на одной из страниц вывести -
содержимое одной из Рубрик!

ОтветитьОтветить
Ден, 14.10.2014 в 23:32

Данный код уже не работает на самом новом вордпрессе. Проверил лично.

ОтветитьОтветить
Anna, 14.11.2014 в 03:58

Подскажите, как вывести на главную страницу блога сначала текст (страница с id), а дальше последние 4 поста?

ОтветитьОтветить
Саня, 08.05.2015 в 13:30

А как сделать, чтобы выводилась не вся запись, а только анонс ?

ОтветитьОтветить

Комментировать

Новые комментарии