Mercoledì
30
Agosto 2023
Come recuperare l’elenco articoli di WordPress senza usare un plugin? In questa guida vedremo il codice in Php necessario per creare la sezione dei post correlati per i tuoi articoli.
Inoltre potrai creare uno shortcode per inserire la tua sezione personalizzata in ogni punto delle tue pagine, vediamo subito come fare:
La funzione necessaria per fare questo è “get_posts($arg)” del core di WordPress.
Abbiamo detto che la funzione necessaria per recuperare gli articoli di WordPress è get_posts($arg), vediamo come funziona.
Ti lascio il link alla documentazione ufficiale per maggiori dettagli.
Il parametro passato a questa funzione deve essere un array che di base è vuoto. Grazie a questo parametro possiamo filtrare i post per categoria, ID, nome ma anche escludere alcuni post dalla ricerca.
$arg = array(
'category' => ‘nome-prima-categoria’, ‘nome-seconda-categoria’,
'numberposts' => 4,
'include' => array(5, 6),
'exclude' => array($post->ID),
'orderby' => 'modified',
'order' => 'DESC',
);
$related = get_posts($arg); //restituisce un array di post che corrispondono alla query
Il parametro ‘orderby’ serve appunto per ordinare i risultati della query e necessita di un elenco di voci separato.
‘orderby’ =>
Per stampare a video gli articoli recuperati dalla query abbiamo bisogno di un ciclo foreach in questo modo:
foreach($related as $post) {
// codice
echo $post->ID;
// codice
}
I parametri che si possono stampare a video sono:
Se vuoi creare uno shortcode per utilizzare il tuo codice in qualunque parte del tuo sito allora puoi farlo usando questo codice.
function my_function() {
ob_start();
$arg = array( // codice per filtrare i post
'category' => ‘nome-prima-categoria’, ‘nome-seconda-categoria’,
'numberposts' => 4,
'include' => array(5, 6),
'exclude' => array($post->ID),
'orderby' => 'modified',
'order' => 'DESC',
);
$related = get_posts($arg); //restituisce un array di post che corrispondono alla query
foreach($related as $post) { //ciclo per mostrare tutti i post richiamati
// codice
echo $post->ID;
// codice
}
$content = ob_get_clean();
return $content;
}
add_shortcode('my_shortcode_name', 'my_function');
Per richiamare lo shortcode dovrai usare questo codice:
[my_shortcode_name]
Scrivi un commento