- Home
- Categorie
- Coding e Sistemistica
- WordPress
- Come visualizzare gli ultimi 3 post interna al sito ma esterna a wordpress?
-
Come visualizzare gli ultimi 3 post interna al sito ma esterna a wordpress?
Ho un sito in cui è installato wordpress.
All'interno dello stesso sito ho una pagina in PHP esterna a Wordpress.
In questa pagina vorrei mostrare gli ultimi 3 articoli pubblicato sul blog, ma solo il TITOLO del post con relativo link.Come si fà? :bho:
Sono disperato
-
Non credo che esistano plugin WordPress che ti possano aiutare in questo caso.
Credo che dovrai essere tu a scrivere del codice php che accedendo alle tabelle WP ti scriva su quella pagina il titolo e il link agli ultimi 3 articoli.
Non dovrebbe essere molto difficile.
-
Si, infatti cercavo il codice PHP da inserire.
Qualcuno puo' darmi una mano visto che non mastico PHP? Grazie
-
Cerca di inglobare un feed impostandolo con solo titolo.
-
@fedemarkez said:
Si, infatti cercavo il codice PHP da inserire.
Qualcuno puo' darmi una mano visto che non mastico PHP? GraziePotrebbe essere una cosa del tipo
[php]
$db_host = "...";
$db_user = "...";
$db_password = "...";
$db_name = "...";$db = mysql_connect($db_host, $db_user, $db_password);
mysql_select_db($db_name, $db);
$result = mysql_query("SELECT * FROM wp_posts WHERE (post_type='post') ORDER BY post_date desc LIMIT 3;");
while ($r = mysql_fetch_array($result))
{
$url = $r["guid"];
$title = $r["post_title"];
echo "<a href='$url'>$title</a>";
}
[/php]
-
Ho provato il codice compilando i dati del mysql ma mi da quest errore:
**Warning**: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in **/web/htdocs/xxx.xxxxxxx.com/home/life/test.php** on line **99**
la linea 99 sta per:
while ($r = mysql_fetch_array($result))
Preciso che nello stesso database ci sono installati due blog wordpress ma ocn prefisso di tabella differente.
COme si puo' risolvere?
-
Mi sono dimenticato di dire che consideravo wp_posts la tabella dei post, quindi con il prefisso wp_ per le tabelle WordPress. Se hai usato un altro prefisso dovrai modificare quella parte di codice.
La query quindi sarà
[php]
$result = mysql_query("SELECT * FROM prefissoposts WHERE (post_type='post') ORDER BY post_date desc LIMIT 3;");
[/php]dove prefisso è il prefisso delle tabelle wordpress.
L'errore che ti da dovrebbe essere dovuto al fatto che tu hai usato un prefisso diverso da wp_ per le tabelle di wordpress.
-
Ciao, purtroppo l'errore persiste
Il blog in questione aveva già il prefisso standard wp_
-
@fedemarkez said:
Ciao, purtroppo l'errore persiste
Il blog in questione aveva già il prefisso standard wp_Che versione di WordPress usi?
-
versione 2.7.1
-
Ho testato quel codice e a me funziona, prova a ricontrollare che
[php]
$db_host = "...";
$db_user = "...";
$db_password = "...";
$db_name = "...";
[/php]host, user, password e dbname siano corretti. Se ci sono ancora errori prova a sostituire la riga
[php]
$result = mysql_query("SELECT * FROM wp_posts WHERE (post_type='post') ORDER BY post_date desc LIMIT 3;");
[/php]con questa
[php]
$result = mysql_query("SELECT * FROM wp_posts ORDER BY post_date desc LIMIT 3;");
[/php]
-
ok perfetto, ora funziona grazie 1000!!!!