De ce WP_Query('showposts=5') afișează doar 1 postare?

10 feb. 2013, 06:55:35
Vizualizări: 22.6K
Voturi: 1

Încerc să fac o interogare simplă pentru a obține ultimele 5 postări într-o listă neordonată, dar aceasta îmi afișează doar 1 rezultat deși am mai multe postări. Am încercat chiar și cu offset, dar îmi arată următoarea postare însă tot un singur rezultat. Ce fac greșit?

<ul>
    <?php $the_query = new WP_Query('showposts=5'); ?>
    <?php while ($the_query -> have_posts()) : $the_query -> the_post(); ?>
        <li>
            <a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
            <p><?php the_content_limit(250); ?></p>
        </li>
    <?php endwhile;?>
</ul>
4
Comentarii

Sunt nou în acest domeniu și doresc să folosesc acest cod pe site-ul meu, dar nu știu unde să-l introduc. Vă rog să mă ajutați. Mulțumesc.

User User
12 ian. 2015 10:39:01

Pentru a posta întrebări, vă rugăm să nu folosiți secțiunea de răspunsuri.

cybmeta cybmeta
12 ian. 2015 10:58:41

Acest lucru nu oferă un răspuns la întrebare. Pentru a critica sau pentru a cere clarificări de la un autor, lăsați un comentariu sub postarea lor - puteți întotdeauna să comentați pe propriile postări, iar odată ce aveți suficientă reputație veți putea să comentați pe orice postare.

birgire birgire
12 ian. 2015 11:23:59

Pentru context, Răspunsul lui @sammy a fost convertit într-un comentariu, am păstrat răspunsurile în beneficiul lui sammy, ps: bun venit în comunitate :)

Tom J Nowell Tom J Nowell
12 ian. 2015 11:39:36
Toate răspunsurile la întrebare 2
1

the_content_limit nu există în WordPress. Probabil căutați ceva precum the_excerpt.

Ceea ce se întâmplă cel mai probabil este că bucla dvs. funcționează corect, dar apelul către o funcție nedefinită provoacă o eroare în program, făcând să pară că bucla nu funcționează. Uitați-vă la HTML-ul generat: probabil veți vedea un singur tag de deschidere <li>, linkul și un tag de paragraf deschis.

showposts este de asemenea învechit. Consultați în codex: eliminat în versiunea 2.1

Încercați acest cod:

<?php
$query = new WP_Query(array(
    'posts_per_page'   => 5,
));

while ($query->have_posts()): $query->the_post(); ?>
    <li>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
        <p><?php the_excerpt(); ?></p>
    </li>
<?php endwhile;
10 feb. 2013 07:12:11
Comentarii

Asta se întâmplă când copiezi și lipești de pe internet. Mulțumesc pentru actualizare! Funcționează!!

TruMan1 TruMan1
10 feb. 2013 07:17:30
4
-2

Sintaxa implicită pentru post_per_page este:

<?php
      $query = new WP_Query
      (array(
                 'posts_per_page'   => 5,
             )
       );

       while ($query->have_posts()): $query->the_post(); ?>
      <li>
          <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
          <p><?php the_excerpt(); ?></p>
     </li>
<?php endwhile;
23 ian. 2015 12:54:22
Comentarii

showposts a fost înlocuit cu posts_per_page. Te rog citește răspunsul acceptat

Pieter Goosen Pieter Goosen
23 ian. 2015 12:57:57

ok ..dar showposts a funcționat și în cazul meu.

Mayank Kushwaha Mayank Kushwaha
1 apr. 2015 13:04:30

Da, funcționează, dar este depreciat și ar putea fi eliminat în viitor, ceea ce ar strica site-ul tău

Pieter Goosen Pieter Goosen
1 apr. 2015 13:06:33

Te rog să recitesti comentariul meu, nu folosi showposts, este învechit

Pieter Goosen Pieter Goosen
1 apr. 2015 13:08:43