Sitefinity CMS

Implementing the RSS Functionality Send comments on this topic.
See Also
Developing with Sitefinity > Services > RSS Service > Implementing the RSS Functionality

Glossary Item Box

In order to make use of the RSS Service in external modules some additional implementation needs to be made. This topic provides detailed information on how to implement and customize an RSS channel provider in Sitefinity. 

 

Changes in the web.config File:

The following code illustrates the changes that should be made to the web.config file in order to register the RSS Service:

web.config - Register Rss Service Copy Code
<framework>
 
...
 
<services>
   
...
   
<add type="Telerik.Rss.RssModule, Telerik.Rss"/>
   
<add type="Telerik.Rss.RssProviderService, Telerik.Rss"/>
  
</services>
  
...
</framework>

 

The following setting should be made in order to enable the application to recognize the Rss requests using an Http Handler:

Setting Rss Http Handler Copy Code
<system.web>
 
<httpHandlers>
  
<add verb="*" path="*.rss" type="Telerik.Rss.RssHttpHandler, Telerik.Rss"/>
 
</httpHandlers>
 
...

 

Following is the RSS provider which performs the connection with Sitefinity database:

Declaring the Rss Provider Copy Code
<rss defaultProvider="Sitefinity">
 
<providers>
 
<clear/>
    
<add name="Sitefinity" type="Telerik.Rss.Data.DefaultServiceProvider, Telerik.Rss.Data" connectionStringName="DefaultConnection" viewFeedsTemplate="~/Sitefinity/Admin/ControlTemplates/RssFeeds/ViewFeeds.ascx" newFeedTemplate="~/Sitefinity/Admin/ControlTemplates/RssFeeds/NewFeed.ascx" editFeedTemplate="~/Sitefinity/Admin/ControlTemplates/RssFeeds/EditFeed.ascx" channelsLayoutTemplate="~/Sitefinity/Admin/ControlTemplates/RssFeeds/ChannelsProvidersLayoutTemplate.ascx" channeslItemTemplate="~/Sitefinity/Admin/ControlTemplates/RssFeeds/ChannelsProvidersItemTemplate.ascx"/>
 
</providers>
</
rss>

 

Also, it is important not to forget to add a reference in your project to Telerik.Rss.

 

Troubleshooting: Error 404

You may get this error when trying to access an RSS feed created with the RSS control. It is thrown because IIS cannot pass the request to ASP.NET for processing as the necessary handler mappings are not set.


The solution is to add the .rss ISAPI filter into the IIS configuration on the server. This is how to do it in IIS 6.x:

  1. Go to the Internet Information Services Manager
  2. Right-click on the name of the Web site virtual directory in the Default Web Site tree. Choose Properties
  3. Click Configuration.
  4. Click Add to open the Add/Edit Application Extension Mapping dialog.
  5. For the value of the Executable field, browse to select the c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll.
  6. In the Extension field, type .rss.
  7. Select the All verbs option.
  8. Clear the Verify that file exists checkbox.
  9. Click OK to close the Add/Edit Application Extension Mapping dialog.
  10. Click OK to close the Application Configuration dialog. 

 

Creation and Implementation of Classes :

There are four interfaces which should be implemented in order to make use of an RSS service. These are:

  • IRssProviderModule
  • IRssSettingsControl
  • IRssProvider
  • IRssViewControl

 

They are discussed in the following topics:

 

In order to illustrate the customization of RSS Feeds, a sample Sitefinity module will be used in the topics of the Rss Implementation section: Telerik.Samples.Jobs.Pluggable

 

 See Next:

See Also