Salve.
ho un sito con annesso blog su piattaforma Wordpress. Il blog è residente sullo stesso dominio del sito.
Ora ho questa esigenza. Dividere gli articoli del blog in 3 categorie. E fin qui tutto ok! Ora per ordine dovrei portare in home page gli ultimi articoli inseriti in appositi "riquadri" utilizzando, appunto un RSS reader.
A questo punto vorrei aggiungere un IF al rss reader per fare in modo da filtrare gli articoli.
Ad Esempio: Articoli in categorie 1, 2 e 3. In home page 3 riquadri in cui vengono eseguiti 3 diversi rss reader in cui nel primo c'è una cosa del tipo "If articolo appartenente alla categoria 1 --> Inserisci --> Else --> Vai al successivo"
In questo modo ognuno dei 3 reader mi leggerebbe (cioè mi metterebbe nell'elenco degli articoli inseriti) solo quelli appartenenti alla categoria relativa.
Se il mio ragionamento fonziona mi servirebbe aiuto nello scrivere tutto ciò perchè le mie conoscenze di php rasentano lo zero (purtroppo).
Intanto vi posto lo sript del reader che uso io... Magari a qualcuno torna utile pure per cose sue oltre che per darmi una mano.
Codice PHP:
<body>
<span class="Stile2">
<ul>
<?php
$insideitem = false;
$tag = "";
$title = "";
$description = "";
$link = "";
function startElement($parser, $name, $attrs) {
global $insideitem, $tag, $title, $description, $link;
if ($insideitem) {
$tag = $name;
} elseif (strtolower($name) == "item") {
$insideitem = true;
}
}
function endElement($parser, $name) {
global $insideitem, $tag, $title, $description, $link;
if (strtolower($name) == "item") {
printf("[*][b][url='%s']%s[/url][/b]
", trim($link), trim($title), trim($title));
printf("%s
", trim($description));
$title = "";
$description = "";
$link = "";
$insideitem = false;
}
}
function characterData($parser, $data) {
global $insideitem, $tag, $title, $description, $link;
if ($insideitem) {
switch (strtolower($tag)) {
case "title":
$title .= $data;
break;
case "description":
$description .= $data;
break;
case "link":
$link .= $data;
break;
}
}
}
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
// Carico indirizzo feed rss da leggere
$fp = fopen("http://www.indirizzodelfeedrss.quellochevipare","r")
or die("Errore di lettura dei dati rss.");
while ($data = fread($fp, 4096))
xml_parse($xml_parser, $data, feof($fp))
or die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
fclose($fp);
xml_parser_free($xml_parser);
?>
[/list]
</span>
</body>
Aiutatemi please... GRAZIE!!!