2017-02-09 3 views
2

Ich habe diese Schleife auf meinem Wordpress Index (index.php) Seite, die meine Beiträge ohne Problem anzeigt.Warum funktioniert meine Wordpress-Abfrage nicht auf Nicht-Indexseiten?

Aber wenn ich versuche, diesen Code auf einer anderen Seite zu verwenden, werden keine Beiträge gefunden.

Kann jemand erklären warum?

Ta!

<?php 
     $args = array(
      'post_type' => 'post', 
       ); 
     $query = new WP_Query($args); 
     if ($query->have_posts()) : 
      // Start the Loop. 
      while (have_posts()) : the_post(); 
       get_template_part('content', get_post_format()); 

      endwhile; 
      // Previous/next post navigation. 
      twentyfourteen_paging_nav(); 

     else : 
      get_template_part('content', 'none'); 

     endif; 
    ?> 
+0

Wie heißt diese Vorlage? –

Antwort

1

nur einige wichtige Punkte hier:

Bitte fügen wp_reset_postdata(); nach jeder benutzerdefinierten Abfrage. https://codex.wordpress.org/Function_Reference/wp_reset_postdata

Fragen Sie auch nur veröffentlichte Posts ab. 'post_status' => 'publish'

<?php 
     $args = array(
      'post_type' => 'post', 
      'posts_per_page' => -1, 
      'post_status' => 'publish' 
       ); 
     $query = new WP_Query($args); 
     if ($query->have_posts()) : 
      // Start the Loop. 
      while ($query->have_posts()): 
       $query->the_post(); 
       get_template_part('content', get_post_format()); 
      endwhile; 
      // Previous/next post navigation. 
      twentyfourteen_paging_nav(); 

      // Reset post data 
      wp_reset_postdata(); 

     else : 
      get_template_part('content', 'none'); 

     endif; 
    ?> 
+0

ah also ich habe gerade eine '$ query->; in meiner while-Schleife, nett. und danke für die Hinweise auf gute Praxis. – jack

1

Nur wenige Änderungen an Ihrem Code vorgenommen. Bitte versuchen Sie dies. Arbeitete für mich.

<?php 
     $args = array(
      'post_type' => 'post', 
      'posts_per_page' => -1 
       ); 
     $query = new WP_Query($args); 
     if ($query->have_posts()) : 
      // Start the Loop. 
      while ($query->have_posts()): 

     $query->the_post(); 
       get_template_part('content', get_post_format()); 
          endwhile; 
      // Previous/next post navigation. 
      twentyfourteen_paging_nav(); 

     else : 
      get_template_part('content', 'none'); 

     endif; 
    ?> 
+0

danke anjana, du hast Recht, das hat einen Reiz bewirkt! – jack

+0

Danke Jack @jack und auch für Upvote :) –

Verwandte Themen