1. В инструкции было указано, что в <item> информацию в поле <description> надо выводить, предварительно пропустив через функцию stripslashes. Я так и сделал и теперь, если я в блоге создаю тему с картинками, то при просмотре rss эти картинки загружаются. Так и должно быть?
Вот мой rss-канал http://antizlo.ru/rss.php
а вот rss всем известного блогера ibigdan'a http://ibigdan.livejournal.com/data/rss у него теги "img" так и остаются экранированными и картинки поэтому не отображаются.
Картинки должны отображаться или тэг "img" должен быть экранирован?
2. Я так нигде не нашел информацию о том, каким должен быть сам файл rss. Видел разные варианты: rss.rss и rss.xml
Я же создал файл rss.php Это правильно?
3. В каком формате выводить время последнего обновления?
$date=date('d.m.Y в H:i');Так правильно?
4. У меня почему-то не отображаются заголовки тем между тэгами "<title>"
Выкладываю код. Проверьте, пожалуйста, что в нём неправильно. Сам понять не могу. Может действительно нужно делать не rss.php a rss.xml
<?php
echo "<?xml version=\"1.0\" encoding=\"windows-1251\" ?>\r\n";
echo "<rss version=\"2.0\">\r\n";
echo "<channel>\r\n\r\n";
echo "<title>Antizlo.ru - блог Алексея Колесникова</title>\r\n";
echo "<link>http://antizlo.ru</link>\r\n";
echo "<description>Блог и сайт Алексея Колесникова</description>r\n";
echo "<language>ru</language>";
echo "<webMaster>wqq@ya.ru</webMaster>";
echo "<copyright>Copyright 2007-2010, antizlo.ru</copyright>\r\n\r\n";
echo "<image>\r\n";
echo "<title>Antizlo.ru - блог Алексея Колесникова</title>\r\n";
echo "<url>http://antizlo.ru/pic/ok.png</url>\r\n";
echo "<width>48</width>";
echo "<height>48</height>";
echo "<description>Antizlo.ru - блог Алексея Колесникова</description>\r\n";
echo "<link>http://antizlo.ru</link>\r\n";
echo "</image>\r\n\r\n";
include 'db_settings.php';
$sql="SELECT id, name, thumbs, time FROM $db_blog WHERE see='1' ORDER BY id DESC LIMIT 1, 10";
$result=mysql_query($sql, $connect);
while($item = mysql_fetch_array($result))
{
$descr = "";
$descr = stripslashes($item["thumbs"]);
$name="";
$name = htmlspecialchars($item["name"]);
$time="";
$time=date('d.m.Y в H:i', $item["time"]);
echo "\r\n<item>\r\n";
echo "<title>".$name."</title>\r\n";
echo "<link>http://antizlo.ru/blogview.php?id=".$item["id"]."</link>\r\n";
echo "<description>".$descr."></description>\r\n";
echo "<pubDate>".$time."</pubDate>\r\n";
echo "</item>\r\n\r\n";
}
echo "</channel>\r\n";
echo "</rss>\r\n";
?>
Спустя 25 минут, 1 секунда (6.06.2010 - 19:33) Unlikely написал(а):
Дата должна быть "Sun, 30 May 2010 11:00:45 +0700".
Майсикюэловский datetime преобразовать можно так:
rss.php, rss.xml значения никакого не имеет. Если php скрипт то надо посылать хэдэр:
можно не вызывать кучу echo, а вывести всё тремя штуками.
и тд.
Майсикюэловский datetime преобразовать можно так:
$date = date("r", strtotime($feeds_row['date']));
rss.php, rss.xml значения никакого не имеет. Если php скрипт то надо посылать хэдэр:
header('content-type: application/rss+xml');
можно не вызывать кучу echo, а вывести всё тремя штуками.
echo "<?xml version=\"1.0\" encoding=\"windows-1251\" ?>
<rss version=\"2.0\">
<channel>
<title>Antizlo.ru - блог Алексея Колесникова</title>
<link>http://antizlo.ru</link>
<description>Блог и сайт Алексея Колесникова</description>
<language>ru</language>
<webMaster>wqq@ya.ru</webMaster>
<copyright>Copyright 2007-2010, antizlo.ru</copyright>
<image>
<title>Antizlo.ru - блог Алексея Колесникова</title>
<url>http://antizlo.ru/pic/ok.png</url>
<width>48</width>
<height>48</height>
<description>Antizlo.ru - блог Алексея Колесникова</description>
<link>http://antizlo.ru</link>
</image>";
и тд.
Спустя 6 минут, 55 секунд (6.06.2010 - 19:40) ak167 написал(а):
Unlikely, спасибо!)))
А Вы знаете, почему не отображаются название тем, которые между тэгами <title>? И нужно ли экранировать "<img>" или правильнее будет его неэкранировать, чтобы отображались не сами тэги а картинки?
А Вы знаете, почему не отображаются название тем, которые между тэгами <title>? И нужно ли экранировать "<img>" или правильнее будет его неэкранировать, чтобы отображались не сами тэги а картинки?
Спустя 5 минут, 19 секунд (6.06.2010 - 19:46) Unlikely написал(а):
ak167
В данный момент ваш фид вообще ничего не отображает. Добавьте хэдер.
И в итемах должен присутствовать тег </guid>. Это как бы уникальный идентификатор, можно туда линк на статью вставлять например.
В данный момент ваш фид вообще ничего не отображает. Добавьте хэдер.
И в итемах должен присутствовать тег </guid>. Это как бы уникальный идентификатор, можно туда линк на статью вставлять например.
Спустя 53 секунды (6.06.2010 - 19:47) ak167 написал(а):
Unlikely, после того как я вписал в код
header('content-type: application/rss+xml');все стало отображаться в xml-формате. В rss на livejournal.ru все отображаеться по-другому. Мой rss сможет проиндексировать яндекс?
Спустя 3 минуты, 37 секунд (6.06.2010 - 19:50) Unlikely написал(а):
<img> мне кажется вобще не должны присутствовать в фиде. Я об этом не читал, точно сказать не могу. Думаю лучше экранировать.
Спустя 14 секунд (6.06.2010 - 19:50) ak167 написал(а):
Цитата (Unlikely @ 6.06.2010 - 16:46) |
ak167 В данный момент ваш фид вообще ничего не отображает. Добавьте хэдер. И в итемах должен присутствовать тег </guid>. Это как бы уникальный идентификатор, можно туда линк на статью вставлять например. |
Unlikely, сделал. Правда так и не понял какая разница между link и guid.
Спустя 11 минут, 13 секунд (6.06.2010 - 20:02) Unlikely написал(а):
Ну оставьте application/xhtml+xml и не экранируйте img на жж нормально всё вроде
link и guid нужны обе.
link и guid нужны обе.
Спустя 4 минуты, 30 секунд (6.06.2010 - 20:06) Unlikely написал(а):
На счёт <title> не знаю. Вроде все правильно.
Спустя 12 минут, 36 секунд (6.06.2010 - 20:19) Unlikely написал(а):
Кстати на жж кажется description через htmlspecialchars пропущен а у вас stripslashes
Спустя 8 минут, 42 секунды (6.06.2010 - 20:27) ak167 написал(а):
Спасибо! Заработало! Добавил даже в яндекс к себе в яккаунт ( http://mail.yandex.ru/lenta/add )
Все ок!)))
Все ок!)))
Спустя 5 минут, 11 секунд (6.06.2010 - 20:33) Unlikely написал(а):
ak167
http://validator.w3.org/feed/check.cgi вбейте там свой фид и почитайте что напишет
http://validator.w3.org/feed/check.cgi вбейте там свой фид и почитайте что напишет