titoli in pagina esterna

a volte si ha la necessita’ di inserire i titoli degli ultimi post in una pagina esterna a wordpress, magari nella home page del proprio sito che e’ diversa da wp, questo e’ facile da fare, basta inserire uno script in una pagina php che si collega al database di wp e e estrae i contenuti, vediamo lo script:

<?php
$db= @mysql_connect('localhost','utente','password');
mysql_select_db('nomedatabase' , $db);
$con = mysql_connect("localhost","utente","password");
$sel_db = mysql_select_db("nomedatabase", $con);
$result = mysql_query("select * FROM wp_posts ORDER BY id desc limit 10" ,$db);
while ($records = mysql_fetch_assoc($result)) {
echo $records['post_title'] ."<br>";
}
?>

queste semplici righe estraggono e stampano in successione gli ultimi 10 id della categoria post, il problema e’ che wp salva come id non solo i post , ma anche le pagine e i file allegati che uplodiamo tramite lo strumento specifico, dobbiamo allora inserire un filtro nello script

per evidenziare solo i post sostituendo la riga $result... dello script con:
$result = mysql_query("select * FROM wp_posts WHERE post_type ='post' ORDER BY id desc limit 10 " ,$db); dove post indica gli articoli di wp, inserendo al suo posto page otterremmo un elenco con le ultime pagine.

una volta creato l’elenco sarebbe bello poter far linkare i singoli titoli con i relativi post, ed allora sostituiamo le ultime rige con

echo "<a href=http://percorso del blog/index.php?p=". $records['ID'] .">". $records['post_title'] ."</a><br>"; } ?>

e alla fine riproponiamo lo script nella sua interezza

<?php

//si crea la connessione col database, si devono inserire i parametri di commessione
$db= @mysql_connect('localhost','utente','password');
mysql_select_db('nomedatabase' , $db);
$con = mysql_connect("localhost","utente","password");
$sel_db = mysql_select_db("nomedatabase", $con);

//si selezionano gli ultimi 10 id della tabella wp_posts che siano post

$result = mysql_query("select * FROM wp_posts WHERE post_type ='post' ORDER BY id desc limit 10 " ,$db);

//si stampa un elenco linkato all'id del singolo post
while ($records = mysql_fetch_assoc($result)) {
echo "<a href=http://percorso del blog/index.php?p=". $records['ID'] .">". $records['post_title'] ."</a><br>";
}
?>

<br /> scrolling=”auto” frameborder=”0″>

Lascia un Commento

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>