<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>WP_Query &#8212; ploshadka.net</title>
	<atom:link href="https://ploshadka.net/tag/wp_query/feed/" rel="self" type="application/rss+xml" />
	<link>https://ploshadka.net</link>
	<description>Мир интернет технологий</description>
	<lastBuildDate>Sat, 13 Jan 2018 11:11:51 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.1</generator>
	<item>
		<title>Как исключить категории и теги при выводе записей wp_query</title>
		<link>https://ploshadka.net/wp_query-remove-cat-tag/</link>
					<comments>https://ploshadka.net/wp_query-remove-cat-tag/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sun, 15 Jul 2018 08:00:56 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WP_Query]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=3711</guid>

					<description><![CDATA[Бывает, что необходимо вывести записи (wp_query) на WordPress исключая конкретные категории или теги. Как это сделать расскажу в этой заметке. Особенно часто возникает задача по исключению записей из конкретных категорий и тегов, когда нужно вывести WP_QUERY несколько раз на одной...]]></description>
										<content:encoded><![CDATA[<p>Бывает, что необходимо вывести записи (wp_query) на WordPress исключая конкретные категории или теги. Как это сделать расскажу в этой заметке. <span id="more-3711"></span></p>
<p>Особенно часто возникает задача по исключению записей из конкретных категорий и тегов, когда нужно вывести <strong>WP_QUERY</strong> несколько раз на одной странице. Для того, чтобы исключить дубли уже выведенных записей, мы уберём их из вывода.</p>
<p>За исключение записей из категорий отвечает:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">'category__not_in' &nbsp;=&gt; array(130, 310),</div></div>
<p>Исключить теги можно так:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">'tag__not_in' &nbsp; &nbsp; &nbsp; =&gt; array(141, 153, 155, 292, 311, 313),</div></div>
<p>Окончательный вид вывода может быть таким:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$paged = get_query_var( 'paged', 1 );<br />
<br />
$args = array(<br />
&nbsp; &nbsp; 'category__not_in' &nbsp;=&gt; array(130, 310),<br />
&nbsp; &nbsp; 'tag__not_in' &nbsp; &nbsp; &nbsp; =&gt; array(141, 153, 155, 292, 311, 313),<br />
&nbsp; &nbsp; 'post_type' &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'post',<br />
&nbsp; &nbsp; 'orderby' &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'date', // Сортируем все записи по дате<br />
&nbsp; &nbsp; 'order' &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'DESC', // От большего к меньшему<br />
&nbsp; &nbsp; 'paged' &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; $paged, // Нужен для правильной работы пангинации<br />
&nbsp; &nbsp; 'posts_per_page' &nbsp; &nbsp;=&gt; '3',<br />
);<br />
<br />
// Полоностью перезаписываем параметры<br />
global $wp_query;<br />
query_posts( $args );<br />
<br />
if ( have_posts() ) : while ( have_posts() ) : the_post();<br />
&nbsp; &nbsp; get_template_part( '/archive/article' ); // здесь вывод записей<br />
endwhile;<br />
else :<br />
endif;<br />
<br />
wp_reset_query(); // Сбрасываем, чтобы количество страниц не увеличилось и не создались страницы без записей. Если этого не сделать, количество страниц увеличится из-за разбиения на 3 записи. И если на второй странице вывод записей больше 3-х, то на первой странице появятся ссылки на не рабочие страницы.</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/wp_query-remove-cat-tag/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как вывести записи (посты) по произвольному полю в WordPress</title>
		<link>https://ploshadka.net/wp_query/</link>
					<comments>https://ploshadka.net/wp_query/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sat, 21 Oct 2017 16:00:20 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[archive.php]]></category>
		<category><![CDATA[home.php]]></category>
		<category><![CDATA[page.php]]></category>
		<category><![CDATA[search.php]]></category>
		<category><![CDATA[tag.php]]></category>
		<category><![CDATA[WP_Query]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=1848</guid>

					<description><![CDATA[Выводим записи (посты, статьи) в категориях (рубриках, разделах) и тегах по произвольному полю. Используем функцию WP_Query в шаблоне своего сайта на WordPress. Нижеследующие разновидности кодов были отточены практикой и временем. Было убито очень много времени на то, чтобы WP_Query заработал...]]></description>
										<content:encoded><![CDATA[<p>Выводим <strong>записи</strong> (посты, статьи) в <strong>категориях</strong> (рубриках, разделах) и <strong>тегах</strong> по произвольному полю. Используем функцию WP_Query в шаблоне своего сайта на WordPress. <span id="more-1848"></span></p>
<p>Нижеследующие разновидности кодов были отточены практикой и временем. Было убито очень много времени на то, чтобы <strong>WP_Query</strong> заработал именно так, как я от него хотел. В своем роде уникальные коды, переписывающие стандартные выводы записей WordPress. </p>
<p>Функционал этих кодов нигде больше нельзя найти (на момент публикации поста), за исключением отдельных вставок, которые являются общими рекомендациями от WordPress и некоторых участков, позаимствованных из других открытых источников.</p>
<div class="highlight">PHP коды для вывода <strong>WP_Query</strong> состоят из значений <strong>произвольного поля</strong>, которое затем по-разному <strong>сортируются</strong> и <strong>сравниваются</strong>. Дальше в тексте статьи и в самом php уже есть примечания. Если нужны будут дополнительные, то поясняется отдельно.</div>
<p>Эти php коды для вывода записей через WP_Query, для удобства, даются без конструкций <strong>if (have_posts())</strong>. Но без неё работать не будут. Правильная конструкция if (have_posts()) для этих кодов приведена ближе к окончанию статьи.</p>
<h2>1. WP_Query PHP код для вывода записей в КАТЕГОРИЯХ</h2>
<p>Самый простой вывод постов, <strong>исключающий записи из конкретных категорий</strong>. Использую его для вывода на главной странице через <strong>index.php</strong> или <strong>home.php</strong>. </p>
<p>Также этот код занесен у меня в файл <strong>empty.php</strong>. Он нужен на тот случай, если человек зашел в категорию, где не должно быть никаких записей, там не будет ничего выводиться, кроме сообщения, что он не должен был попасть на эту страницу (раздел). И предлагаются инструменты для поиска на сайте.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php query_posts($query_string.'&amp;cat=-1,-169,-40,-91'); ?&gt;</div></div>
<p>Иногда в код, который выводит все статьи, но исключает определенные рубрики, требуется добавить пагинацию (&#038;paged=&#8217;.$paged;), чтобы в последний страницах навигации не было пустых страниц.</p>
<p>В коде ниже выводятся записи с сортировкой по <strong>произвольному полю с ДАТОЙ</strong>. Выводятся записи с произвольным полем год, затем сортируются от последнего года к предыдущему.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php<br />
// Произвольное поле по которому будет сортировка<br />
$the_key = '1Year';<br />
$args = array(<br />
&nbsp; &nbsp; 'meta_key' =&gt; $the_key,<br />
&nbsp; &nbsp; // Сортируем по значению цифры в произвольном поле<br />
&nbsp; &nbsp; 'orderby' =&gt; 'meta_value_num',<br />
&nbsp; &nbsp; // Сортируем от большего к меньшему<br />
&nbsp; &nbsp; 'order' =&gt; 'DESC',<br />
&nbsp; &nbsp; // Исключаем категории<br />
&nbsp; &nbsp; 'cat' =&gt; '-310'<br />
);<br />
<br />
global $wp_query;<br />
query_posts(<br />
&nbsp; &nbsp; array_merge(<br />
&nbsp; &nbsp; &nbsp; &nbsp; $wp_query-&gt;query,<br />
&nbsp; &nbsp; &nbsp; &nbsp; $args<br />
&nbsp; &nbsp; )<br />
);<br />
?&gt;</div></div>
<h2>2. WP_Query PHP код для вывода постов в КАТЕГОРИИ с БЮДЖЕТОМ</h2>
<p>Следующий вывод <strong>WP_Query</strong> выводит, в категориях WordPress записи, по <strong>произвольному полю &#171;Бюджет&#187;</strong>. В этом поле находятся цифровые значения. </p>
<p>Допустим требуется вывести в категории &#171;Бюджет&#187; все записи, которые будут <strong>сортироваться от большей цифры к меньшей</strong>.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php <br />
global $query_string;<br />
$paged = get_query_var( 'paged', 1 );<br />
$loop = new WP_Query( $args );<br />
$categoryvariable = $cat;<br />
$args = array(<br />
&nbsp; &nbsp; 'post_type' =&gt; 'post',<br />
&nbsp; &nbsp; 'cat' =&gt; $categoryvariable, <br />
&nbsp; &nbsp; // Исключаем категорию<br />
&nbsp; &nbsp; 'cat' &nbsp; &nbsp; &nbsp; =&gt; '-310', &nbsp;<br />
&nbsp; &nbsp; // Выводим по произвольному полю<br />
&nbsp; &nbsp; 'meta_key' &nbsp;=&gt; '1Budget2',<br />
&nbsp; &nbsp; // Нужен для правильной работы пангинации<br />
&nbsp; &nbsp; 'paged' &nbsp; &nbsp; =&gt; $paged, &nbsp;<br />
&nbsp; &nbsp; 'meta_query'=&gt; array(<br />
&nbsp; &nbsp; &nbsp; &nbsp; // Сравниваем поле бюджет с цифрой, меньше которой записи не выводить<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'key' &nbsp; &nbsp; &nbsp; =&gt; '1Budget2',<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'compare' &nbsp; =&gt; '&gt;=',<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'value' &nbsp; &nbsp; =&gt; 100000000,<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'type' &nbsp;&nbsp; &nbsp; =&gt; 'numeric',<br />
&nbsp; &nbsp; &nbsp; &nbsp; // Сравниваем, что не пустое. Если пустое - то не выводим.<br />
&nbsp; &nbsp; &nbsp; &nbsp; // 'meta_compare' =&gt; '!=',<br />
&nbsp; &nbsp; ),<br />
&nbsp; &nbsp; // Сортируем все записи по годам<br />
&nbsp; &nbsp; 'orderby' &nbsp; &nbsp;=&gt; 'meta_value_num',<br />
&nbsp; &nbsp; // От большего к меньшему<br />
&nbsp; &nbsp; 'order' &nbsp; &nbsp; &nbsp;=&gt; 'DESC', &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
);<br />
query_posts( $args ); <br />
?&gt;</div></div>
<h2>3. WP_Query PHP код для вывода постов в разделе РЕЙТИНГ</h2>
<p>Нижеследующий код выводит все статьи с произвольным полем год, сортируя по этому произвольному полю (от последнего года, до меньшего). Одновременно с этим исключает все записи из категорий меньше значения рейтинга 9.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php<br />
global $query_string;<br />
$paged = get_query_var( 'paged', 1 );<br />
$loop = new WP_Query( $args );<br />
$categoryvariable = $cat;<br />
$args = array(<br />
&nbsp; &nbsp; 'post_type' =&gt; 'post',<br />
&nbsp; &nbsp; 'cat' =&gt; $categoryvariable,<br />
&nbsp; &nbsp; // Выводим по произвольному полю<br />
&nbsp; &nbsp; 'meta_key' =&gt; '1Year',<br />
&nbsp; &nbsp; // Нужен для правильной работы пангинации<br />
&nbsp; &nbsp; 'paged' =&gt; $paged,<br />
&nbsp; &nbsp; 'meta_query'=&gt; array(<br />
&nbsp; &nbsp; &nbsp; &nbsp; // Сравниваем поле РЕЙТИНГА с цифрой, меньше которой записи не выводить<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'key' &nbsp; &nbsp; &nbsp; =&gt; '1myRaiting',<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'compare' &nbsp; =&gt; '&gt;=',<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'value' &nbsp; &nbsp; =&gt; 9,<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'type' &nbsp;&nbsp; &nbsp; =&gt; 'numeric',<br />
&nbsp; &nbsp; ),<br />
&nbsp; &nbsp; // Сортируем все записи по годам<br />
&nbsp; &nbsp; 'orderby' &nbsp; &nbsp;=&gt; 'meta_value_num',<br />
&nbsp; &nbsp; // От большего к меньшему<br />
&nbsp; &nbsp; 'order' &nbsp; &nbsp; &nbsp;=&gt; 'DESC', &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
);<br />
query_posts( $args ); <br />
?&gt;</div></div>
<h2>4. WP_Query PHP код для вывода постов в КАТЕГОРИИ с ДАТОЙ</h2>
<p>В php коде ниже вводятся две переменные с ДАТАМИ. Текущая дата сравнивается с датой, которая будет в будущем. </p>
<p>Для чего это нужно? Например, я хочу вывести <strong>ТОВАРЫ</strong>, которые только <em>поступят в продажу</em> или <strong>ФИЛЬМЫ</strong>, которые только <em>выйдут в ближайшем будущем</em>. Если, например, такие ТОВАРЫ или ФИЛЬМЫ или ЧТО-ТО другое существует, то следует вывести ЗАПИСИ с этими произвольными полям. В противном случае в категории ничего не будет выводиться.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php <br />
global $query_string;<br />
$paged = get_query_var( 'paged', 1 );<br />
$loop = new WP_Query( $args );<br />
$categoryvariable = $cat;<br />
// Вводим свои значения<br />
// Текущая дата<br />
$date1 = date('Y-m-d');<br />
// Текущая дата + 12 месяцев<br />
$date2 = date('Y-m-d', strtotime('+12 month'));<br />
$args = array(<br />
'post_type' =&gt; 'post',<br />
'cat' =&gt; $categoryvariable, <br />
// Выводим по произвольному полю<br />
'meta_key' &nbsp;=&gt; 'premiere', <br />
// Нужен для правильной работы пангинации<br />
'paged' &nbsp; &nbsp; =&gt; $paged, <br />
'orderby' &nbsp; =&gt; 'meta_value', &nbsp; &nbsp;<br />
'order' &nbsp; &nbsp; =&gt; 'ASC',<br />
'meta_query'=&gt; array(<br />
&nbsp; &nbsp; 'key' &nbsp; &nbsp; &nbsp; =&gt; 'premiere',<br />
&nbsp; &nbsp; // Сравниваем значения двух дат<br />
&nbsp; &nbsp; 'value' &nbsp; &nbsp; =&gt; array($date1,$date2),<br />
&nbsp; &nbsp; // Обозначаем, что будет дата, формат ГодМесяцДень<br />
&nbsp; &nbsp; 'type'&nbsp; &nbsp; &nbsp; =&gt; 'DATE',<br />
&nbsp; &nbsp; // Сравниваем две даты, пример вывода: array('20500401','20500405') <br />
&nbsp; &nbsp; 'compare' &nbsp; =&gt; 'BETWEEN'<br />
&nbsp; &nbsp; // Сравниваем, что не пустое. Если пустое - то не выводим.<br />
&nbsp; &nbsp; // 'meta_compare' =&gt; '!=',<br />
), &nbsp; &nbsp; &nbsp; <br />
);<br />
query_posts( $args ); <br />
?&gt;</div></div>
<h2>5. WP_Query PHP код для вывода записей в разделе ТЕГОВ</h2>
<p>Вывод записей в тегах, в отличии от категорий, немного другой. По какой-то причине, в тегах не работает функция исключающая категории из WP_Query:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">'cat' =&gt; '-310'</div></div>
<p>К счастью, работает другая структура:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">'category__not_in' =&gt; '310'</div></div>
<p>И код вывода $wp_query для тегов будет такой:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php<br />
// Произвольное поле по которому будет сортировка<br />
$the_key = '1Year';<br />
$args = array(<br />
&nbsp; &nbsp; 'meta_key' =&gt; $the_key,<br />
&nbsp; &nbsp; // Сортируем по значению цифры в произвольном поле<br />
&nbsp; &nbsp; 'orderby' =&gt; 'meta_value_num',<br />
&nbsp; &nbsp; // Сортируем от большего к меньшему<br />
&nbsp; &nbsp; 'order' =&gt; 'DESC',<br />
&nbsp; &nbsp; // Исключаем категории<br />
&nbsp; &nbsp; 'category__not_in' =&gt; '310'<br />
);<br />
global $wp_query;<br />
query_posts(<br />
&nbsp; &nbsp; array_merge(<br />
&nbsp; &nbsp; &nbsp; &nbsp; $wp_query-&gt;query,<br />
&nbsp; &nbsp; &nbsp; &nbsp; $args<br />
&nbsp; &nbsp; )<br />
);<br />
?&gt;</div></div>
<h2>6. WP_Query PHP код для вывода записей в разделе ПОИСКА</h2>
<p>Для вывода WP_Query на странице поиска используем совершенно иной код:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php<br />
// использую совместно с функцией SearchFilter в Functions.php<br />
$mySearch =&amp; new WP_Query(&quot;s=$s &amp; showposts=-1&quot;);<br />
// Подсчет количества найденного:<br />
$num = $mySearch-&gt;post_count;<br />
echo &quot;Найдено: &quot;;<br />
echo $num;<br />
echo &quot;записей&quot;;<br />
wp_reset_query(); <br />
?&gt;</div></div>
<p>Для специальной обработки запроса <strong>WP_Query</strong> в файле <strong>search.php</strong> добавляем в файл <strong>functions.php</strong> своей темы следующий код:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">// Сортировка по годам для search.php<br />
function SearchFilter($query) {<br />
&nbsp; &nbsp; if ($query-&gt;is_search) {<br />
&nbsp; &nbsp; &nbsp; &nbsp; // Ищет только в постах, но не на страницах<br />
&nbsp; &nbsp; &nbsp; &nbsp; $query-&gt;set('post_type', 'post');<br />
&nbsp; &nbsp; &nbsp; &nbsp; // Происходит сортировка по году<br />
&nbsp; &nbsp; &nbsp; &nbsp; $query-&gt;set('meta_key', '1Year');<br />
&nbsp; &nbsp; &nbsp; &nbsp; // Который является значением номера<br />
&nbsp; &nbsp; &nbsp; &nbsp; $query-&gt;set('orderby', 'meta_value_num');<br />
&nbsp; &nbsp; &nbsp; &nbsp; // И сортируется в обратном порядке<br />
&nbsp; &nbsp; &nbsp; &nbsp; $query-&gt;set('order', 'DESC');<br />
&nbsp; &nbsp; }<br />
&nbsp; &nbsp; return $query;<br />
}<br />
add_filter('pre_get_posts','SearchFilter');</div></div>
<p>Он сортирует записи в категории <strong>ПОИСК</strong> по <strong>произвольному полю ГОДЫ</strong>.</p>
<h2>В заключение. Очень важно.</h2>
<p>После любого из перечисленных выше кодов (кроме того что в <strong>functions.php</strong>) нужно вывести следующую функцию:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;<br />
&lt;?php endwhile; ?&gt;<br />
&lt;? wp_reset_postdata(); ?&gt;<br />
&lt;?php else: ?&gt;<br />
&lt;?php endif; ?&gt;</div></div>
<p>Обязательная нужна такая конструкция:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;? wp_reset_postdata(); ?&gt;</div></div>
<p>Это необходимо, чтобы не выводить пустые страницы, когда <strong>следует исключить записи из определенных рубрик <em>на основании сравнения</em></strong>.</p>
<h2>7. Код для главной страницы (раздела) для вывода и РАЗДЕЛЕНИЯ записей по ТЕГАМ</h2>
<p>Следующая конструкция выводит записи из категории 27. Сортирует их случайно. Выводит 4 записи.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php <br />
global $query_string;<br />
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;<br />
$loop = new WP_Query( $args );<br />
$tagvariable = $tag;<br />
$args = 'tag=' . $tagvariable . '&amp;tag_id=27&amp;orderby=rand&amp;posts_per_page=4';<br />
query_posts( $args );<br />
?&gt;<br />
<br />
&lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;<br />
<br />
&lt;?php get_template_part( '/random' ); ?&gt;<br />
<br />
&lt;?php endwhile; ?&gt;<br />
&lt;?php endif; ?&gt;<br />
&lt;?php wp_reset_query(); <br />
// Аннулирует данные произвольного запроса WP_Query <br />
// Если после цикла используется функция wp_reset_query() для &quot;сброса&quot; данных, <br />
// то wp_reset_postdata() использовать не нужно! <br />
?&gt;</div></div>
<p>В конструкции выше код отвечающий за вывод поста находится в отдельном файле:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php get_template_part( '/random' ); ?&gt;</div></div>
<div class="highlight">Вышеприведенную конструкцию можно размещать на главной или в любых других разделах сколько угодно раз.</div>
<h2>8. PHP для вывода и РАЗДЕЛЕНИЯ записей по РАЗДЕЛАМ</h2>
<p>Тот же самый код, но для вывода записей из РАЗДЕЛОВ, а не ТЕГОВ. Значения вывода (<strong>$args</strong>) изменены на другие. В том числе учтена пагинация (<strong>&#038;paged=&#8217;.$paged;</strong>), в конструкции выше она исключена из работы.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php <br />
global $query_string;<br />
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;<br />
$loop = new WP_Query( $args );<br />
$categoryvariable = $cat;<br />
$args = 'cat=' . $categoryvariable . '&amp;meta_key=1Year&amp;orderby=meta_value_num&amp;order=DESC&amp;paged='.$paged;<br />
query_posts( $args );<br />
?&gt;<br />
<br />
&lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;<br />
<br />
&lt;?php get_template_part( '/random' ); ?&gt;<br />
<br />
&lt;?php endwhile; ?&gt;<br />
&lt;?php endif; ?&gt;<br />
&lt;?php wp_reset_query(); <br />
// Аннулирует данные произвольного запроса WP_Query <br />
// Если после цикла используется функция wp_reset_query() для &quot;сброса&quot; данных, <br />
// то wp_reset_postdata() использовать не нужно! <br />
?&gt;</div></div>
<h2>9. Выводим один конкретный пост</h2>
<p>Типовые конструкции для вывода одного определенного поста. В данном случае будет выведен пост с номером 1. Под конец wp_reset_postdata сбрасывает вывод WP_Query, так что можно выводить и любые другие посты.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$the_query = new WP_Query('p=1');<br />
<br />
while ($the_query-&gt;have_posts() ) : $the_query-&gt;the_post();<br />
<br />
the_content();<br />
<br />
edit_post_link(__('...', 'ploshadka.net'));<br />
<br />
endwhile;<br />
<br />
wp_reset_postdata();</div></div>
<h2 id="premiere_ru">10. Вывод записей с незаполненным произвольным полем</h2>
<p>Можно вывести записи с пустым значением в конкретном произвольном поле. Иногда такой способ помогает найти все записи с незаполненными значениями. Как альтернатива <a href="https://ploshadka.net/mysql-replacement/">поиска данных через MySQL</a>.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&lt;?php<br />
$the_key = 'premiere_ru';<br />
$args = array(<br />
&nbsp; &nbsp; 'meta_query' =&gt; array(<br />
&nbsp; &nbsp; &nbsp; &nbsp; array(<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'key' =&gt; $the_key,<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'compare' =&gt; 'not exists',<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'value' =&gt; null,<br />
&nbsp; &nbsp; &nbsp; &nbsp; ),<br />
&nbsp; &nbsp; )<br />
);<br />
<br />
global $wp_query;<br />
query_posts(<br />
&nbsp; &nbsp; array_merge(<br />
&nbsp; &nbsp; &nbsp; &nbsp; $wp_query-&gt;query,<br />
&nbsp; &nbsp; &nbsp; &nbsp; $args<br />
&nbsp; &nbsp; )<br />
);<br />
<br />
if ( have_posts() ) : while ( have_posts() ) : the_post();<br />
<br />
get_template_part( '/ploshadka.net' ); <br />
endwhile;<br />
endif;<br />
wp_reset_query();<br />
?&gt;</div></div>
<h2>11. Выводим одну конкретную страницу</h2>
<p>В заключение как можно вывести вместо записи содержимое страницы. Выводим страницу с ID 130:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$id = 130;<br />
$p = get_page($id);<br />
$t = $p-&gt;post_title;<br />
echo '&lt;h2 class=&quot;home-top-title&quot;&gt;'.apply_filters('post_title', $t).'&lt;/h2&gt;';<br />
echo apply_filters('the_content', $p-&gt;post_content);</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/wp_query/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
