loop e Wp_Query
Come mostrare nel front-end pagina o articoli, creati nel backend
In WordPress, il loop è un concetto fondamentale che viene utilizzato per recuperare e visualizzare i contenuti del sito, come articoli, pagine e altri tipi di post personalizzati.
Il loop è solitamente utilizzato all'interno dei file di template, come `index.php`, `single.php`, `archive.php`, ecc.
loop di WordPress
Il loop di WordPress è una struttura che recupera i contenuti del sito e li visualizza in base ai criteri specificati.Ecco un esempio di codice per il loop di base:
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<div><?php the_content(); ?> </div>
<?php endwhile; ?>
<?php else :?>
<p>Nessun contenuto trovato. </p>
<?php endif; ?>
Questo codice verifica se ci sono post disponibili nel database.
Se ci sono post disponibili, viene iterato su ciascun post utilizzando la funzione the_post() e vengono visualizzati il titolo e il contenuto del post utilizzando le funzioni the_title() the_content().
WP_Query
WP_Query è una classe in WordPress utilizzata per recuperare i post in base a criteri specifici.Può essere utilizzato per personalizzare e modificare il loop di WordPress. Ecco un esempio di codice utilizzando WP_Query per recuperare i post di una categoria specifica
<?php
$args = array(
'category_name' => 'notizie',
'posts_per_page' => 5
);
$query = new WP_Query($args);
if ($query->have_posts()) :
while ($query->have_posts()) : $query->the_post();
?>
<h2><?php the_title(); ?></h2>
<div><?php the_content(); ?> </div>
<?php
endwhile;
wp_reset_postdata();
else :?>
<p>Nessun contenuto trovato. </p>
<?php endif; ? >
In questo esempio, stiamo utilizzando `WP_Query` per recuperare i post dalla categoria "notizie" e visualizzarli.
La variabile $args contiene i criteri di query, come la categoria e il numero di post da visualizzare.
La funzione new WP_Query( $args ) crea un nuovo oggetto WP_Query con i criteri specificati.
Dopo aver eseguito il loop sui post, è importante reimpostare i dati del post utilizzando wp_reset_postdata() per ripristinare il loop principale.