Tutoriale WordPress de încredere, atunci când aveți cea mai mare nevoie.
Ghidul începătorului pentru WordPress
Cupa WPB
25 de milioane+
Site-uri web care folosesc plugin-urile noastre
16+
Ani de experiență WordPress
3000+
Tutoriale WordPress de la experți

Cum să afișezi postările de săptămâna trecută în WordPress

Mulți dintre cititorii noștri începători încep curând să-și modifice temele WordPress, de aceea avem o fișă de referință pentru temele WordPress pentru a-i ajuta să înceapă. Acest lucru aduce provocări interesante pentru utilizatorii noi. Un astfel de cititor ne-a întrebat recent cum să afișeze postările de săptămâna trecută în WordPress. Ei doreau doar să adauge o secțiune pe pagina lor de pornire care să afișeze postări din săptămâna anterioară. În acest articol, vă vom arăta cum să afișați postările de săptămâna trecută în WordPress.

Înainte de a vă arăta cum să afișați postările din săptămâna precedentă, să aruncăm mai întâi o privire asupra modului în care puteți afișa postările din săptămâna curentă folosind WP_Query. Copiați și lipiți următorul cod în fișierul functions.php al temei dvs. sau într-un plugin specific site-ului.

function wpb_this_week() { 
$week = date('W');
$year = date('Y');
$the_query = new WP_Query( 'year=' . $year . '&w=' . $week );
if ( $the_query->have_posts() ) : 
while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
    <h2><a href="<?php the_permalink(); ?>" title="Permanent link to <?php the_title(); ?> "><?php the_title(); ?></a></h2>
	<?php the_excerpt(); ?>
  <?php endwhile; ?>
  <?php wp_reset_postdata(); ?>
<?php else:  ?>
  <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif;
}

În exemplul de cod de mai sus, am aflat mai întâi săptămâna și anul curent. Am folosit apoi acele valori în WP_Query pentru a afișa postări din săptămâna curentă. Acum tot ce trebuie să faceți este să adăugați <?php wpb_this_week(); ?> în fișierul temei dvs. acolo unde doriți să afișați postările.

A fost simplu, nu-i așa? Acum, pentru a afișa postările de săptămâna trecută, tot ce trebuie să faceți este să scădeți 1 din valoarea săptămânii. Dar dacă aceasta este prima săptămână a anului, atunci veți obține 0 pentru săptămână și anul curent în loc de anul trecut. Iată cum rezolvați această problemă.

function wpb_last_week_posts() { 
$thisweek = date('W');
if ($thisweek != 1) :
$lastweek = $thisweek - 1;   
else : 
$lastweek = 52;
endif; 
$year = date('Y');
if ($lastweek != 52) :
$year = date('Y');
else: 
$year = date('Y') -1; 
endif;
$the_query = new WP_Query( 'year=' . $year . '&w=' . $lastweek );
if ( $the_query->have_posts() ) : 
while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
    <h2><a href="<?php the_permalink(); ?>" title="Permanent link to <?php the_title(); ?> "><?php the_title(); ?></a></h2>
	<?php the_excerpt(); ?>
  <?php endwhile; ?>
  <?php wp_reset_postdata(); ?>
<?php else:  ?>
  <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif;

}

În exemplul de cod de mai sus am plasat două verificări. Prima verificare setează valoarea săptămânii trecute la 52 (care este ultima săptămână dintr-un an) atunci când valoarea săptămânii curente este 1. A doua verificare setează valoarea anului la anul trecut atunci când valoarea ultimei săptămâni este 52.

Pentru a afișa postările de săptămâna trecută, tot ce trebuie să faceți este să adăugați <?php wpb_last_week_posts(); ?> în fișierul șablon al temei dvs., acolo unde doriți să le afișați. Sau, dacă doriți să aveți un shortcode pentru a-l putea adăuga într-o pagină sau un widget, atunci pur și simplu adăugați această linie sub codul furnizat mai sus.

add_shortcode('lastweek', 'wpb_last_week_posts');

Puteți utiliza acum acest shortcode într-o postare, pagină sau un widget, astfel:

[săptămâna trecută]

Vă rugăm să rețineți că nu aveți întotdeauna nevoie de WP_Query pentru a crea interogări personalizate. WordPress vine cu o serie de funcții care vă ajută să afișați postări recente, arhive, comentarii etc. Dacă există o modalitate mai ușoară de a utiliza funcțiile existente, atunci nu este neapărat necesar să scrieți propriile interogări.

Sperăm că acest articol v-a ajutat să afișați postările de săptămâna trecută în WordPress. Experimentați cu codul și modificați-l pentru a corespunde nevoilor dvs. Anunțați-ne dacă aveți întrebări lăsând un comentariu mai jos sau alăturați-vă nouă pe Twitter.

Dezvăluire: Conținutul nostru este susținut de cititori. Acest lucru înseamnă că dacă faceți clic pe unele dintre linkurile noastre, este posibil să câștigăm un comision. Vedeți cum este finanțat WPBeginner, de ce contează și cum ne puteți susține. Iată procesul nostru editorial.

Cel mai bun instrumentar WordPress

Obține acces GRATUIT la instrumentarul nostru - o colecție de produse și resurse legate de WordPress pe care fiecare profesionist ar trebui să le aibă!

Interacțiuni cu cititorii

8 CommentsLeave a Reply

  1. Sunt curios când/de ce aș vrea să afișez postările săptămânii? Pe pagina mea de pornire, afișez fragmente, deci postările din ultimele mele 2 săptămâni sunt vizibile. Ce îmi scapă aici? Mulțumesc!

    • Nu este necesar. Dar alți proprietari de site-uri web ar putea avea un aspect în care ar dori să afișeze separat postările din săptămâna precedentă. Acest tutorial este destinat să ajute acei utilizatori.

      Admin

Lasă un răspuns

Vă mulțumim că ați ales să lăsați un comentariu. Vă rugăm să rețineți că toate comentariile sunt moderate conform politicii noastre de comentarii, iar adresa dvs. de e-mail NU va fi publicată. Vă rugăm să NU folosiți cuvinte cheie în câmpul nume. Să avem o conversație personală și semnificativă.