Записи с тегом "query_posts()"
6 июля 2009 г.

Очень часто бывает необходимость в создании дополнительного цикла на странице, где уже есть основной поток постов. Например, когда нужно вывести отдельный блок со специально отобранными постами, на английском языке такие называют featured posts.

Если просто сделать копию основного цикла, добавив нужные параметры через query_posts, то может так получиться, что в результате “поломаются” оба цикла. Чтобы этого избежать, необходимо у второго цикла (не основного) использовать 2 дополнительные строки кода:

<?php $temp_query = $wp_query; ?>
	<?php query_posts('showposts=3&cat=7) ?>
	<?php if (have_posts()) : ?>
		<?php while (have_posts()) : the_post(); ?>
			  ...
		<?php endwhile; ?>
	<?php endif; ?>
<?php $wp_query = $temp_query; ?>

Ключевыми в данном коде являются первая и последняя строки, которые и спасают циклы от разрушения.

—–
Хороший сайт-магазин, продающий материалы для отделки и ремонта: облицовочная плитка, мозаика керамогранит, натуральный камень, ступени. Порадует большой ассортимент продукции и действующие скидки.

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

<?php query_posts('meta_key=review_type&meta_value=music'); ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

В результате вы получите список постов с произвольным полем “review_type” и значением этого поля “music”. Вместо них вы можете использовать любые свои названия.

meta_key – это название произвольного поля.
meta_value – это его значение.

Посты также можно получить по одному из этих параметров, исключив ненужный.

Данный код можно использовать, например, для получения списка избранных постов, их еще называют featured-посты.

——

Сеть специализированных мастерских Astarter.ru осуществляет продажу и ремонт стартеров, генераторов, бензонасосов и катушек зажигания для любых видов автомобилей. Мастерские компании есть не только в Москве, но и по всей России.

Облако тегов