Skip to content

Enable Aggregation

Derek Greer edited this page Nov 20, 2020 · 3 revisions

The Los Techies site displays hosted content as well as aggregated feeds. The main landing page is constructed dynamically from an aggregate feed to which the main public FeedBurner feed is pointed. Additionally, each author can have their external feed dynamically displayed when navigating to their subfolder (e.g. https://lostechies.com/johndoe).

There are several steps for including a new feed.

Step 1

Request the desired feed be added to the Los Techies Feed.Informer digest.

Step 2

Edit the _config.yml file in the site root to include the following 2 properties for the desired collection (i.e. author):

  • feed - The aggregated feed used for displaying posts for the author's subfolder
  • post-identifier - an ECMAScript regular expression that will uniquely identify a post link as belonging to the associated author

The following is an example taken from Jimmy Bogard's collection configuration:

  jimmybogard:
    active: true
    author: "Jimmy Bogard"
    output: true
    permalink: /:collection/:year/:month/:day/:title/
    disqus:
      short_name: "jimmybogardblog"
      active: true    
    feed: "http://feeds.feedburner.com/GrabBagOfT"
    post-identifier: "(jimmybogard.com)|(GrabBagOfT)"

Step 3

Modify the associated author's index.html to include a property named aggregated set to true in the Jekyll front matter. The following example shows the index.html for Jimmy Bogard's collection:

---
layout: author_default
permalink: /jimmybogard/index.html
index: true
aggregated: true
redirect_from:
  - "/members/jimmy_bogard/default.aspx/"
  - "/blogs/jimmy_bogard/"
---

<ul id="posts"/>

<p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a></p>

The Details

The main site uses Feed.Informer to aggregate the main Los Techies feed (https://lostechies.github.io/blog/feed.xml) with author-specific feeds. The main landing page uses a library named rss2json to consume the aggregate feed to display summarized entries for each post. Note that rss2json caches results, so updates are not seen immediately. The title of each post points to a special page which displays the full post on Los Techies along with an external link image for navigating directly to the original post.

Unfortunately the Feed.Informer service doesn't appear to include author information reliably. As a result, a special construct was necessary to match each aggregated post to the author. This is the purpose of the post-identifier collection property in the _config.yml file. The same code is used for showing the main feed as well as the author-specific feed. In some cases, it may be necessary to provide a regular expression that matches the post URL for both feeds (e.g. FeedBurner feeds come across as a proxy to the original post).

If for some reason the site doesn't appear to be updating, check the following:

If the issue can't be resolved, contact Derek Greer ([email protected]) to diagnosis the issue.

Clone this wiki locally