De ce folosim if cu bucla while?

2 nov. 2017, 10:36:34
Vizualizări: 132
Voturi: 1
if(have_posts()): // Dacă există postări
    while(have_posts()): // Cât timp există postări
        the_post(); // Încarcă postarea curentă
        the_content(); // Afișează conținutul
    endwhile;
endif;

Fără condiția if, următorul cod funcționează de asemenea:

while(have_posts()): // Cât timp există postări
    the_post(); // Încarcă postarea curentă
    the_content(); // Afișează conținutul
endwhile;

Mulțumesc.

0
Toate răspunsurile la întrebare 2
0

Ai nevoie de if ( have_posts() ) : doar dacă, așa cum sugerează numele funcției, trebuie să faci ceva diferit în cazul în care nu există postări. Acesta ar fi ceva de genul afișării unui mesaj "Nu s-au găsit postări."

Dar ai nevoie de acest lucru doar pe șabloanele care ar putea să nu afișeze postări, cum ar fi arhivele și căutarea. Pentru șabloanele de postare unică și pagini, condiția if este inutilă.

2 nov. 2017 10:51:17
0

Ai dreptate, nu este necesar.

Totuși, de multe ori vei dori să înfășori afișarea postărilor într-un <div class="posts"> sau ceva similar și poți face afișarea acelui div condiționată în funcție de dacă va conține efectiv ceva. Acest lucru face stilizarea mai curată în opinia mea, pentru că nu vei ajunge să ai <div class="posts"></div> dacă nu există postări. Nu va fi nevoie să folosești selectori :empty în CSS pentru a ascunde acest div gol, deoarece acesta nu va fi deloc în DOM.

2 nov. 2017 10:50:38