2013-11-02 2 views
0

Я не могу понять, как использовать feedr, чтобы разобрать нормальный rss-канал, например http://mashable.com/feed/.Как обработать обычные каналы с помощью DocPad Plugin Feedr?

Как разобрать фид? Документация довольно плохая. Твиттер-пример не помогает мне. Например, я хотел бы захватить фид и показать его содержимое таким образом, как это:

<ul> 
    <li><a href="link-to-posting">Post Title</a> – Post Content</li> 
</ul> 

Любые предложения?

ответ

1

Плагин feedr просто превращает любой json или xml в объект javascript, который можно использовать на страницах. Таким образом, с помощью RSS-каналов вы получите объект, который имеет свойства, которые соответствуют фиду XML in the rss, с элементами, становящимися объектами и т. Д. Таким образом, будет существовать объект канала, а затем под ним массив объектов объектов и т. Д.

Вот как ваш mashable пример будет работать. Поместите это в конфигурации docpad.coffee:

plugins: 
    feedr: 
     feeds: 
      mashable: 
       url: 'http://mashable.com/feed/' 

Затем вы можете использовать @feedr.feeds.mashable объект на странице, как это:

<ul> 
    <% for item in @feedr.feeds.mashable.channel.item: %> 
     <li><a href="<%= item.link %>"><%= item.title %></a> - <%- item.description %></li> 
    <% end %> 
</ul> 
+0

Я сделал это так же, как и вы, за исключением '@ feedr.feeds.phlow.channel.item' Это сделало трюк. Теперь он работает. – Phlow

+0

Справа. 'phlow' или' mashable' будут такими, какие вы назвали в конфигурации. –

0

Если кто-то получил ошибки при разборе ... Если вы хотите включают заголовок, описание и ссылку на обработанный фид, добавьте этот фрагмент. Это добавит связанное название плюс описание.

<h1><a href="<%- @feedr.feeds.mashable.channel.link %>"><%= @feedr.feeds.mashable.channel.title %></a></h1> 
<p><%= @feedr.feeds.mashable.channel.description %></p> 

А как все остальное, как упоминалось выше Эрв.

<ul> 
    <% for item in @feedr.feeds.mashable.channel.item: %> 
     <li><a href="<%= item.link %>"><%= item.title %></a> - <%- item.description %></li> 
    <% end %> 
</ul>