recipe for a social learning platform - #14 - news feeds
Posted by: admin in site_development, tags: drupal, feed aggregation, social rating[ok, I did skip #13 - but hey, I just recently suffered site outage, and (fortunately temporary!) loss of a domain name, when my (former) hosting company went belly-up one Saturday morning without notice - so perhaps I can be forgiven a little superstitious behavior!]
In addition to the user-contributed material on my site (blog posts in the community blog & in satellite groups; attachments to blog posts displayable in a mini-portfolio; and aggregated distributed content from user blogging on other platforms), I wanted to provide some focused 3rd party feeds - health news from the BBC and NPR, Terry Gross’s wonderful Fresh Air interviews, feeds from the Centers for Disease Control, &c. I’ve been providing these on the front page of our Moodle platform using Moodle’s rss aggregation module as a sideblock, but thought it might be interesting to add some features to these imported feeds - such as threaded discussion on selected news items, and social rating of news stories with ranking/surfacing of voted-up content.
I’ve played around with ways of doing this. Recently I’ve been playing around with Tony Mobily’s most excellent Drigg module for Drupal, & may have more to say about that later on a bit, after more of a trial. My present implementation tho, is muckled together from other Drupal plugins.
As the Aggregation module is employed for other purposes on the site, I added a 2nd feed aggregating module. After trying out several options, I ended up using the feedapi module. This does not have the full set of features available in the Aggregation module, but it is serving reasonably well for this purpose. With a little care in naming of node-types, these two aggregators seem to play well together. The feedapi module is configured to create Story nodes from the feed items, and these Story nodes are organized for display in various formats using the Views menu.
For social ranking of news items, I have the votingapi module installed, and the voting interface is configured using extra_voting_forms (I’ve also tried fivestar, which works nicely as well; it just comes down to a preference re user interface). This is set up to permit voting up/down of Story nodes containing news item content. Comments are enabled for the Story node.
I’ve also enabled the community tags module for Story nodes, to permit users to tag stories with terms relevant to our user community.
In addition to the pages displaying the raw news items, I’ve set up a page for “promoted” stories, with a views filter set for VotingAPI points vote result (sum) greater than or equal to a chosen value (in the sandbox site, I’ve set this at ≥2; in a site with more active members it could be set higher).
Users can now easily access relevant 3rd-party material (news feeds, feeds from 3rd-party blogs of interest, &c.); scan for relevant news items & read these; rate them according to interest/relevance to our learner community; and engage in discussion on the items. A table-view of feed items is header-sortable by user-ranking, number of comments, &c. & Items voted up in interest appear on the “promoted stories” page.
I currently have restricted the creation of new feeds to administrator; eventually I plan to open this to faculty, and it might be interesting to open it to the community at large.
Table of contents for social learning site
- recipe for a social learning platform - #1
- recipe for a social learning platform - #2 - demo site
- recipe for a social learning platform - #3 - site & core modules
- recipe for a social learning platform - #4 - additional modules
- recipe for a social learning platform - #5 - modules hacks
- recipe for a social learning platform - #6 - social rated news
- recipe for a social learning platform - #7 - theme
- recipe for a social learning platform - #8 - login & access
- recipe for a social learning platform - #9 - views
- recipe for a social learning platform - #10 - no social rating?
- recipe for a social learning platform - #11 - files repository
- recipe for a social learning platform - #12 - distributed content
- recipe for a social learning platform - #14 - news feeds
- recipe for a social learning platform - #15 - surfacing algorithms
- recipe for a social learning platform - #16 - surfacing algorithms - node cloud
- recipe for a social learning platform - #17 - news feeds take two
- recipe for a social learning platform - #18 - making it social
- featuritis
- recipe for a social learning platform - navigation


Entries (RSS)
addendum -
I’m not terribly happy with the feedapi module - the Aggregation module appears to run circles around it.
Here’s a workaround, which permits the single Aggregation module to serve both to aggregate users’ distributed content into the community blog, and to create separate aggregated news feeds on the site. Once again, this relies on the flexibility of the Views module.
set up a user “rss_admin”, and give this “user” privileges to manage feeds
imported news feeds (as node type “Feed”, using the Aggregation module) need to be authored by “rss_admin” - you can do this as admin, by entering this username in the “authored by” field under Authoring Information, when setting up the feed (you don’t need to log in as this user, but can do this from your administrative login).
News pages now need to use the node type “feed item” - which is the node type generated by the Aggregation module.
In the Community Blog views, add a field “Node: author name” and set this to “is none of” “rss_admin”.
In the News Feed views, add a field “Node: author name” and set this to “is one of” “rss_admin”.
Now - so long as all News Feeds are “authored” by the “user” rss_admin, they will show up on the news pages you create, and will not show up in the community blog.
This does require that news feeds be administered centrally, by someone with access to the “rss_admin” user account. For my platform this works out OK - I’m wishing to avoid “feed gloat” in the news feeds section anyway. Individual users still have the ability to add feeds from their own distributed content, which will show up in the Community Blog views.
I’ll continue to play with this using both the feedapi module, and using the Aggregation module, and report back my experiences with these.