RSS лента

SpY

Каратель
LV
0
 
помогите где скачать мод rss ленты (для того чтобы по rss могли читать новости моего сайта) заранее спасибо
 
какой нафиг мод? идешь в админку и там включаешь экспорт в RSS... выбираешь темы для экспорта, число новостей, порядок отображения и частоту обновления...

функция импорт-экспорт RSS уже присутствует в IPB...


зы а у меня другая проблемма... RSS грабер сайтовый - все только в UTF-8 выдает и на win-1251 кракозябрицы... :(

сам модуль для сайта rss.php:
<!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1--><html>

<head>
&nbsp;&nbsp; <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">

&nbsp;&nbsp;<title>RSS - Lenta</title>
</head>
<body>
<h5><b>Новое на форуме:</b></h5>
<?php

class RSSParser {
&nbsp;&nbsp;var $insideItem = false;
&nbsp;&nbsp;var $tag = "";
&nbsp;&nbsp;var $title = "";
&nbsp;&nbsp;var $description = "";
&nbsp;&nbsp;var $originalLink = "";
&nbsp;&nbsp;var $dt = "";

&nbsp;&nbsp;function startElement($parser, $tagName, $attrs)
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;if($this->insideItem)
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->tag = $tagName;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;elseif($tagName == "ITEM")
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->insideItem = true;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;}

&nbsp;&nbsp;function endElement($parser, $tagName)
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;if($tagName == "ITEM")
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("<p>%s</p>", $this->description);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("<p><h5><a href=\"%s\" target=\"_blank\">%s</a></h5></p>",
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trim($this->originalLink), " $this->title ");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("<h6>%s</h6>", $this->dt);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->title = "";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->originalLink = "";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->description = false;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->dt = "";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->insideItem = false;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;}

&nbsp;&nbsp;function characterData($parser, $data)
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;if($this->insideItem)
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;switch($this->tag)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case "TITLE":
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->title .= $data;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case "DESCRIPTION":
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->description .= $data;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case "LINK":
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->originalLink .= $data;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case "PUBDATE":
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this->dt .= $data;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;}
}

$xml_parser = xml_parser_create("UTF-8");
$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("ТУТ АДРЕС ВАШЕЙ ЛЕНТЫ НОВОСТЕЙ", "r")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; or die("Error reading RSS data!");
while($data = fread($fp, 4096))
{
&nbsp;&nbsp;xml_parse($xml_parser, $data, feof($fp))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; or die("Error parsing RSS data!");
}
fclose($fp);
xml_parser_free($xml_parser);
?>

</body>

</html><!--c2--></div><!--ec2-->

методы вставки:
лучший но работает только если сайт в UTF-8
<!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1--><? include "rss.php"; ?><!--c2--></div><!--ec2-->
худший но работает при любой кодировке сайта
<!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1--><iframe src="rss.php" border="0" height="500px"></iframe><!--c2--></div><!--ec2-->
путь естественно прописывается согласно полному URL... :D

зы сам код надо сохранять в формате UTF-8 без BOM... AkelPad в помощь тем кто блокнот юзает... :)
 
ну так это ты про ИПБ сказал а ему нужно для php-fusion
 
а да точно... просто я с поиска на тему вышел.. посему не заметил что она в разделе php-fusion :D

зато сий приблуд можно применить на фузион для вывода новостей с IPB... :D
 
Сверху