{"id":111757,"date":"2019-04-10T15:36:11","date_gmt":"2019-04-10T13:36:11","guid":{"rendered":"https:\/\/nl.wordpress.org\/support\/topic\/pre_get_posts\/"},"modified":"2019-04-10T15:36:11","modified_gmt":"2019-04-10T13:36:11","slug":"pre_get_posts","status":"publish","type":"topic","link":"https:\/\/nl.wordpress.org\/support\/topic\/pre_get_posts\/","title":{"rendered":"pre_get_posts"},"content":{"rendered":"<p>Ik tracht het dubbel uitvoeren van de query te voorkomen. Om de zaak werkend te krijgen gebruik ik de volgende query:<\/p>\n<pre><code>  \/\/ Set up the query arguments\n  $args = array (\n    &#039;post_type&#039; =&gt; &#039;jhk_story&#039;,   \/\/ what type you want to display\n    &#039;posts_per_page&#039; =&gt; 9,        \/\/ display 9 posts per page\n    &#039;cat&#039; =&gt; 8,                   \/\/ category 8 is &#039;Levensverhaal&#039;  \n  );\n\n  \/\/ Create a new WP_Query object and pass arguments\n  $stories = new WP_Query( $args );\n\n\/* Alleen om het resultaat van de query te inspecteren\n  echo &#039;&lt;pre&gt;&#039;;\n    print_r($stories);\n  echo &#039;&lt;\/pre&gt;&#039;;\n<\/code><\/pre>\n<p>Dit geeft een acceptabel result zoals in de link is te zien.<\/p>\n<p>Wil ik de &#8216;pre_get_posts&#8217; weg bewandelen dan gaat het fout.<br \/>\nDit is de selectie: (staat in functions.php)<\/p>\n<pre><code>\nfunction jhk_modify_main_query_page_stories ($query) {\n\t\/\/ Must run on page: page-jhk-stories only, so:\n\t$target_page = &#039;verhalen&#039;;\n\n\tif ( ! is_admin()\n\t\t&amp;&amp; $query-&gt;is_main_query()\n\t\t&amp;&amp; $target_page === $query-&gt;get( &#039;pagename&#039;)) {\n   \t\t$query-&gt;set(&#039;post_type&#039;, &#039;jhk_story&#039;);   \/\/ what type you want to select\n   \t\t$query-&gt;set(&#039;category__in&#039;,  array( 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ));\n    \t$query-&gt;set(&#039;posts_per_page&#039;, 9 );\n\t}\n}\n\/\/ Hook this function to the pre_get_posts action\nadd_action(&#039;pre_get_posts&#039;, &#039;jhk_modify_main_query_page_stories&#039;);\n<\/code><\/pre>\n<p>Inspectie van het resultaat van de query lijkt niet mogelijk; er is geen $query of zoiets dat ik kan benaderen.<br \/>\nDaarnaast toont wp nu ineens de pagina index.php en die is leeg; waarom is dat?<br \/>\nLaat ik de regel: <code>$query-&gt;set(&#039;post_type&#039;, &#039;jhk_story&#039;);   \/\/ what type you want to select<\/code> weg dan krijg ik weer gewoon de pagina zoals in de link, maar ZONDER posts.<br \/>\nWaar en Hoe ga ik hier de mist in?<\/p>\n","protected":false},"template":"","class_list":["post-111757","topic","type-topic","status-publish","hentry","topic-tag-pre_get_posts"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/nl.wordpress.org\/support\/wp-json\/wp\/v2\/topic\/111757","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nl.wordpress.org\/support\/wp-json\/wp\/v2\/topic"}],"about":[{"href":"https:\/\/nl.wordpress.org\/support\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":0,"href":"https:\/\/nl.wordpress.org\/support\/wp-json\/wp\/v2\/topic\/111757\/revisions"}],"wp:attachment":[{"href":"https:\/\/nl.wordpress.org\/support\/wp-json\/wp\/v2\/media?parent=111757"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}