Как встроить новости чужого сайта?
Это делается так:
1. Создаем документ, в котором будет показываться чужая лента.
2. Вставляем в этот документ вызов сниппета
[ [NewsParser2?url=http://www.kremlin.ru/export/index.xml|xq|section|xe|nieuws&limit=6&image=true&descr=true] ]
Здесь http://www.kremlin.ru/export/index.xml - ссылка на транслируемую ленту.
В результате на странице нашего сайта будет транслироваться лента новостей, например:
Где получить ссылки на ленты?
Разумеется, на разных сайтах. Там может быть и специальная страница с инструкциями, например как на сайте Президента РФ, и просто маленькие значки, наподобие
или
Существуют и сайты, коллекционирующие ссылки на ленты новостей.
Замечания
1. При трансляции лента новостей принимает вид, заданный таблицами стилей вашего сайта. В показанной на скриншоте ленте Президента заголовки смотрятся не очень хорошо - они приняли наш вид, а мы на своем сайте заголовки в виде ссылок не используем.
2. Некоторые ленты транслируются с ошибками, и это не ошибки сниппета. Если ошибки регулярные, такую ленту лучше не показывать.
3. Если лента показывается в неправильной кодировке - ищите ошибку на своем сайте.
4. Сниппет NewsParser2 мы заимствовали из CMS Etomite и немного переделали - именно чтобы избежать проблем с кодировками лент.
Как дать возможность читать новости нашего сайта?
Это делается так:
1. Создаем в скрытой папке документ с псевдонимом, например rss с пустым шаблоном и типом содержимого text/xml.
2. Делаем вызов сниппета:
[ !Ditto? &startID=`1498` &format=`rss` &tpl=`ditto_rss_tpl`! ]
Здесь в параметре &startID надо указать ID папки, в которой находятся транслируемые документы, а в параметре &tpl - имя чанка - шаблона для вывода документов в ленту. Например, чанк ditto_rss_tpl выглядит так:
<item> <title></title> <link>http://cad.kurganobl.ru/[~~]</link> <description><![CDATA[ ]]></description> <pubDate></pubDate> <guid isPermaLink="false">http://cad.kurganobl.ru/[~~]</guid> <dc:creator>ruCAD - интегрированная система на базе AutoCAD</dc:creator> </item>
3. Где-то на сайте дать ссылку на страницу rss.html. При обращении к этой странице лента вашего сайта будет иметь различный вид в зависимости от браузера:
Вид ленты в Firefox:
Вид ленты в Cafari:
Вид ленты в Internet Explorer:
Мы видим, что Internet Explorer просто выдаёт XML-код ленты, а другие браузеры пытаются её показать. В Internet Explorer ленты надо просматривать через Избранное-RSS, тогда наша лента будет иметь вид:
Лента, встроенная в посторонний сайт, может выглядеть, например, так:
Написать комментарий
Реплика №2: 15.11.2009, 21:27:49
Реплика №1: 15.11.2009, 21:27:05