Content syndication – more popular than ever!

Is RSS dead?

You may well ask if RSS is dead, but in reality RSS is very much alive and kicking. It is true that a number of major content providers such as Facebook, Instagram and Pinterest have deprecated their RSS services. Driven by changes to preferred feed mechanisms, many large information and social media sources are moving towards the use of APIs as opposed to RSS. This is mostly a matter of economy and convenience for them as their APIs are used for all manner of software applications. Using the same APIs to provide feed generation allows them to reduce the resources previously required to deliver content via RSS.

RSS is still very popular

is rss deadSo is RSS dead?..Not for tens of millions of WordPress and other popular CMS users/publishers. RSS is still the most convenient method to feed data from web pages. RSS is built into most CMS platforms so it makes sense to use this functionality. Obviously sites like Instagram, Pinterest and Facebook are built on a proprietary platform. This means that providing and supporting RSS feeds requires specific resources to maintain service levels. Facebook for example, already provides this information through their Facebook Graph API, which is designed for programmers to build Facebook software and apps. At FeedWind we wrote our own software which accesses the Facebook API to extract information which we combine into a feed.

Re-using code is not an option

is rss aliveIf the world of software was simple, we could simply reuse that code to provide support for Instagram and many other social media providers. Unfortunately each of these platforms has a different API so the code we write to extract a feed from an API is different from each platform we support. Obviously there is some code we recycle but overall, a lot of programming effort goes into each platform we support. Let’s take a quick look at RSS feeds and what they are. Many people think RSS is a simple standard that uses XML to deliver website content in a markup format which contains no formatting data. To an extent this is true. In fact, feeds can be one of five versions of the RSS standard, or one of two versions of the Atom standard (a similar markup specification for feeds). In amongst this, FeedWind has to be able to figure out which of these standards a particular feed adheres to. Fortunately this information is included in the header of a valid feed so this is not the big challenge.

Feed parsing

Things do get complex when detecting and parsing to determine relevant elements for inclusion in your widget. A good example of this challenge is in deciding which image we should select as a thumbnail. We have to detect language, feed title, item titles plus their descriptions, images, timezones, date/time formats and deal with content in XML that is not relevant to the display of a feed. For Google calendar we have to extract different information such as event data.

Determining feed origin

Once we have achieved this we also have to determine what origin the feed has. Is it a YouTube channel, Facebook feed, Google Calendar feed or a regular RSS feed? These all require a specific approach when it comes to parsing the content for display in our widget. A YouTube feed for example requires a video player; as mentioned above,  Facebook feed requires us to use the Facebook Graph API in order to extract the feed data which is not in XML like a regular RSS feed and Google Calendar has different information from other feeds such as event data which are not a component of other RSS feeds.

Ever more complex solutions

All this amounts to a complex backend to our system to cope with all these varied feed sources and mechanisms. Presently we require our users to select which feed type they want to display so that does make things a little easier (in the setup process users must select RSS/Facebook/Gcal as their source feed). However, from that point onwards, our software puts in a lot of hard work to format and present your feeds in a widget that can be customized in so many ways with little effort from the user. We are constantly asked for expansions to our widget service to include online platforms which do not offer RSS as a feed format. Instagram and Pinterest for example, have joined others in abandoning RSS in favor of alternative methods for providing a feed source. Each one of these requires a significant programming effort for us to be able to display feeds generated from their APIs. We are actively working on these with Instagram most likely the first in a series of releases which will add support for more platforms.

Need to look good? need a customizable widget!

There are services out there which offer a huge range of support for platforms whose feeds are API driven. However, they do not offer the same level of customization or features that FeedWind provides. Many have fixed format displays or templates, branding/advertising (which is generally obtrusive) and only a basic level of possible customizations. We have focused on providing a consistent interface which can be used to customize/format feed content to match user needs rather than providing a basic, common widget format/display. A fixed format for a widget makes it difficult to match website design. For his treason, this type of widget will often stand out and can make a site look amateurish from a design perspective. Feedwind offers full CSS customization so our widgets can seamlessly integrate into nearly any website/CMS.  

Changing a Link Target in 3rd Party Content

link targetWe are often asked whether it is possible to change the link target for links in feeds. This article explains why we do not allow link targets to be changed using our interface. When a feed is published by a 3rd party (for example Reuters, BBC News or even a Facebook feed), there will be in nearly every case, a “Terms and Conditions of Use associated with that feed. For example a Facebook feed will contain images owned by either Facebook or by the user who published that page.

Copyright law applies to a link target

While you can disable these links, you cannot (legally, for copyright and “terms of use”  reasons) change the link target to another site. i.e. your image links cannot be redirected to a different website. This will be in direct contravention of the terms of use of the RSS feed publisher in 90% of cases. In all cases, directing the photo to another link is also in contravention of copyright as under those laws, you are not permitted to change content for your own gain unless you have explicit permission from the owner. Neither can you change an outgoing  link from an image as it would be deemed usage of that image for gain, which copyright law does not accommodate unless agreement with the owner is obtained, or royalty paid for usage. Owner consent is usually still mandatory regardless. It does depend on which part of the world you are in as to what copyright laws apply. At FeedWind we generally err on the side of copyright law in the US and Europe.

Why we don’t offer a link editing feature

If we enabled a feature whereby users could change the link target, then although we would not be committing a crime, it is a feature that would enable others to do so. We have to respect the rights of content owners to reproduce their content without tampering or altering the content, or making it convenient for their content to be used for gain without appropriate permission. Quite likely, if we were to be seen to be doing so, we would not be popular with RSS feed publishers and content owners.

Disabling links is acceptable

It is possible however to disable links as this is an acceptable form of modification. Many webmasters may like to display 3rd party content but may not want their users to click-thru and leave their site. This can be achieved by using a custom CSS which includes “pointer-events:none” for feed item titles and links in the description.


CSS for Google Calendar Event Date & Time Elements

custom google calendar widgetWe have just introduced new classes for the Google Calendar widget date & time components. These allow you to customize the date and time with CSS and achieve any styling you want. You can match your website style and make your Calendar Event date/time more prominent in the feed. This article focuses on the CSS used for the date/time components of your custom Google Calendar widget. You can find out more about how to use CSS to style the remaining widget components in our in-depth article on Google Calendar CSS.

Custom Google Calendar Widget CSS Classes

These are the relevant classes for Google Calendar event date/time:

‘Clock icon’ class

This class is for the clock icon which appears alongside the date/time by default. .fa.fa-clock-o Note – If you wish to hide this icon you can use: .fa.fa-clock-o {display:none!important;}

‘Time’ class

The ‘Time’ class styles the time element of the date/time. .fw-gc-feed-item-time-only

‘Date’ class

The ‘Date’ class styles the date element of the date/time. .fw-gc-feed-item-date-only

‘Date & Time’ class

This class styles both date and time components. Useful for adding a border around the whole date+time element, or to reposition the whole date+time element using margins. .fw-gc-feed-item-date
Using these CSS classes you can create a widget such as the example below. You can find the full CSS used for this custom Gcal widget here.
If you need any assistance with customizing your Google Calendar widget, please contact us and we’ll be happy to help!

Increase widget load speed

Your widget loading (and page loading speed) can be negatively affected by a number of factors, but there are also ways to increase widget load speed. We aim to provide the fastest RSS widget available, but there are limiting circumstances which are out of our control. We do apply caching of your widget and refresh your widget cache every 15 minutes. Some of the parameters used in the FeedWind setup screen can affect widget/page-loading performance and are detailed below.

Number of feed items

The more feed items you specify in your widget setup, the longer it will take to load the widget as our server has to make more calls to the source feed server in order to obtain your content. The default setting is 15 feed items but you can increase this up to 99; please note however, that there is a proportional increase in load time for widget content as the number of items increases.

Text/Thumb/HTML Styles

The fastest load performance is achieved using the Text-only widget style. The Thumbnail option is next-fastest, with the HTML style loading slowest. Obviously the more media within the content, the slower a widget will load too.

Number of Characters in the Titles & Content

The greater number of characters allowed in the content, the slower your widget performance will be as more data must be transferred. However, this is a minor influence on the widget load speed.

Feed URLs

The more feed URLs you aggregate the slower your widget will load. To increase widget load speed, please limit the number of URLs you use in a widget.  Our system limits the number of feed URLs to 15 at present. When choosing feeds from third parties, it is important to choose those from sources whose servers can offer the same approximate response times. If you have a single feed in your multiple feeds list whose server is slow to respond, your widget will also be slow to refresh.

Custom CSS

Loading a custom CSS requires an external server call to wherever the CSS file is stored. This means that he widget cannot load until the server hosting the CSS responds and delivers the requested CSS data. This means that storing the CSS on the same server (preferably within the same directory structure of your site files). Caching the CSS file is also recommended.

Page Caching (plugins & extensions)

These can vastly improve widget loading times as HTML, CSS and .js all of which are used with the FeedWind RSS widget. You must be careful not to set the cache refresh to more than 15 minutes however, otherwise users may not get the widget content refreshed during the FeedWind 15 minute refresh cycle.