
10-23-2004, 05:02 PM
|
|
|
|
Join Date: Feb 2002
Posts: 25
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
|
RSS Feed in Sidebar
i'm trying to include an RSS feed of headlines to my sidebar. is there anyone who can tell me how to pull that off?
this is the code I want to include from my file blogfeed.php. i know that i can't just copy and paste this into the template.
PHP Code:
$feed = 'http://www.trickology.com/xmlsrv/rss2.php?blog=1';
class RSSParser {
var $insideitem = false;
var $tag = "";
var $title = "";
var $link = "";
function startElement($parser, $tagName, $attrs) {
if ($this->insideitem) {
$this->tag = $tagName;
} elseif ($tagName == "ITEM") {
$this->insideitem = true;
}
}
function endElement($parser, $tagName) {
if ($tagName == "ITEM") {
printf("<a href='%s' class='headlines'>%s</a><br>",
trim($this->link),htmlspecialchars(trim($this->title)));
$this->title = "";
$this->description = "";
$this->link = "";
$this->insideitem = false;
}
}
function characterData($parser, $data) {
if ($this->insideitem) {
switch ($this->tag) {
case "TITLE":
$this->title .= $data;
break;
case "LINK":
$this->link .= $data;
break;
}
}
}
}
$xml_parser = xml_parser_create();
$rss_parser = new RSSParser();
xml_set_object($xml_parser,&$rss_parser);
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
$fp = fopen($feed,"r")
or die("Error reading RSS data.");
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);
|