Introduction to Jahia's RSS Social Component Module

May 31, 2012
Daniel Ovalle

When it comes to developing your own web content application, website or professional web application, there are many CMS platforms (both licensed and Open Source) that you can choose from. However, I think that Jahia xCM is a great tool for this type of project.

What makes Jahia xCM a good choice? The awesome Java Technology Platform it uses as base technology and the list of features available for administrators, developers and editors are just some of the reasons. Comparing Jahia to other CMS platforms can get cumbersom, but I think one powerful feature in particular makes it stand out: its modular architecture.

Modules

On the Jahia website, there is documentation about what modules are and how to build and work with them: "Each module is equivalent to a “plug-in” which extends the functionality of Jahia and manages one or several specific business case." 

It's that simple. A module is a piece of software you can build and deploy to accomplish with a specific requirement on your website or web application. This is really interesting, specially for architects and developers, because it represents the solution for most of the complex requirements on a project.

Display external RSS feed

Jahia xCM comes with a great list of modules that are comparable to other CMS platforms on the market. Those modules are classified under several categories (this is really well documented on provided link). Here I'll go through the features of a specific module found into the "Social Components" category: "Display external RSS feed".

As the name implies, this module is an RSS feed client that displays content from any public access source. As we can expect, there are some basic attributes to configure the behavior of this module:

  • RSS feed URL: the URL of the RSS feed source.
  • Number of entries per pages: This attribute controls how many feed items you want to display. This is not related to pagination.
Let's go with a sample to see the module working using the integration environment described here [link to previous post]):
  1. First let's create a new project on Jahia xCM 6.6 using the system templates (I called it test-project). This will let us start from scratch without any template or CSS issue.
  2. Add a page under the Home using the "simple" template (I called it rss_client).

The project should look like this on edit mode:


Make a module available for a project

All the modules deployed into the Jahia xCM host (deployed [link to a post about deploying modules]) can be used on all the projects hosted there, but since version 6.6 of Jahia xCM modules are not "available" by default for all projects. This means if you need a specific module (provided by Jahia xCM or deployed by you), you need to make it available for the project.

This can be done two ways:

  1. On the project creation process, there is a new step where you can select the module or modules that you want to activate for the new project.
  2. In case of existent projects you can make a module available using the Studio UI just deploying the specific module. This works the same as when you need to deploy a template set to a specific project after doing modifications.

In our case, we need to deploy the module Jahia RSS Feeds (1.2) on the test_project:

 

Using the module

Once the module is available for the test_project, we can add it into the specific area we want. For this sample we're going to use the "listA" content area (see nextimage) to add the module:



We need to define the values for the module:



As the result of this process, we should see the two first items of the RSS feed displayed into the page area: