Există trei moduri de a reseta bucla în wordpress wp_reset_postdata, wp_reset_query și rewind_posts, toate despre

Prima, wp_reset_postdata (), permite returnarea variabilei globale $ post la starea inițială din interogarea principală. Eticheta de șablon este utilă în special atunci când este utilizată cu WP_Query; vă permite să modificați rezultatul ciclurilor sau să creați mai multe cicluri pe o singură pagină. Se pare ca aceasta:







Din câte puteți vedea, această etichetă este foarte simplă în aplicația sa: nu necesită parametri și nu returnează valori. Acesta elimină pur și simplu datele de înregistrare după executarea unei interogări arbitrare. Spuneți, de exemplu, că avem o buclă WP_Query care se află în fișierul header.php al subiectului:

Această bucla ar arăta o intrare aleatorie în antet, dar ar schimba și obiectul cererii pentru orice alte bucle din pagină. Fără datele inițiale, execuția bucla principală cu înregistrări, care este, de exemplu, în index.php, poate duce la rezultate neașteptate. Din fericire, putem folosi wp_reset_postdata pentru a returna obiectul cererii la starea inițială.







Pentru a face acest lucru, lăsați wp_reset_postdata în urmă după toate buclele arbitrare. Revenind la exemplul nostru anterior, pentru a reseta ciclul, este suficient să aplicați wp_reset_postdata:

Astfel, evităm majoritatea erorilor necunoscute și de neînțeles asociate cu implementarea mai multor cicluri.

Wp_reset_postdata este cel mai bine folosit după buclele create cu WP_Query.

Următoarea etichetă de șablon, pe care o vom examina, este wp_reset_query (). Funcția wp_reset_query vă permite să resetați interogarea utilizată în cicluri arbitrare. Această funcție, ca și wp_reset_postdata, nu ia nici un parametru și nu întoarce nici o valoare. Are următoarea formă:

Dacă ne uităm la funcția wp_reset_query în query.php, atunci vedem că folosește funcția adițională wp_reset_postdata, descrisă mai sus:

Astfel, ambele funcții wp_reset_query () și wp_reset_postdata () vă permite să resetați obiect cererea prin restabilirea variabilei globale $ post, dar wp_reset_query merge un pic mai departe - această caracteristică este, de fapt distruge cererea anterioară înainte de a comite sarcina încredințată. Exemplul de mai jos ilustrează utilizarea sa:







Articole similare

Trimiteți-le prietenilor: