Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install collective.blog.feeds

How to install collective.blog.feeds

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install collective.blog.feeds
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.3
2.1Never BuiltWhy not?
1.3 Available View build log
1.2 Available View build log
Windows (64-bit)
1.3
2.1Never BuiltWhy not?
1.3 Available View build log
1.2 Available View build log
Mac OS X (10.5+)
1.3
2.1Never BuiltWhy not?
1.3 Available View build log
1.2 Available View build log
Linux (32-bit)
2.1 Available View build log
1.3 Available View build log
1.2 Available View build log
Linux (64-bit)
2.1 Available View build log
1.3 Available View build log
1.2 Available View build log
 
Author
License
GPL
Depended by
Lastest release
version 2.1 on May 31st, 2013

Introduction

collective.blog.feeds provides blog feeds for standard Plone folders and collections. It builds on basesyndication and fatsyndication and uses their architecture and templates, but provides concrete implementations for standard Plone content.

To create the feeds all you need to do is make collective.blog.feeds be a dependent product in your buildout, and include the ZCML one way or another. Plone folders, large folders and collections will then gain a set of new views: atom.xml, feed.rdf, feed11.rdf, rss.xml and itunes.xml.

Yes, all folders get this view. No, you don't have to enable syndication on the folder, which also means you don't have to find that enable syndication tab action that for some reason is invisible by default so that you can't turn on the standard RSS feed without knowing Plone inside and out for some incomprehensible reason.

It also adds the feeds to the plone header with the standard '<link rel="alternate" ...>' type of header links. There probably should be a way to turn that off or on, but currently there isn't.

collective.blog.feeds supports Plone 3 and Plone 4.

The development of collective.blog.feeds was sponsored by the Bergen Public Library - http://www.nettbiblioteket.no

Settings

By default this product will only use Documents, News Items and Files as entries in the blog feed. If you want to use some custom content types you will need to do two things:

  1. Provide an IFeedEntry adapter. Look at the "adapters.py" file for an examples made for News Item. As you see it's not particularily complicated. You also need to register the adapter, look in configure.zcml to see how that is done.
  2. Create a property in portal.properties/site_properties called "blog_types" of the "lines" type. Then in that property add each content type that your site should see as being blog entries.
Podcasts

collective.blog.feeds provides an adapter for the ATFile content type with podcast enclosure support. You can therefore make podcasts simply by making a folder and sticking files in it.

If you have a custom class for podcasts, you need to add an adapter for it so that the file get's picked up properly and inserted into an enclosure in the feed. If your podcast class subclasses ATFile or implements the IATFile interface you shouldn't need to do anything. If you don't, but provide a similar interface, you can try to use the ATFile adapter, by adding this to your configure.zcml:

<adapter
for="<your types class or interface>" provides="Products.basesyndication.interfaces.IFeedEntry" factory="collective.blog.feeds.adapters.FileFeedEntry" />
<adapter
for="<your types class or interface>" provides="Products.basesyndication.interfaces.IEnclosure" factory="collective.blog.feeds.adapters.ATFileEnclosure" />

If your podcast class doesn't implement an interface similar to ATFile, you need to make your own adapter. It's not tricky, take a look at the adapters.py file to see how the ATFile adapter is done.

What this product do not have

There is no Plone Control Panel in this product, nor will there ever be one, so you need to change the settings through the ZMI. There will also never be any per-folder settings, as that would require extending the schema for folders or have a dedicated blog type, both which will defeat the main goal of this product: simplicity and flexibility.

This product will never use doctests to test anything besides documentation.

Changelog

2.1 (2013-05-27)
  • Instead of putting the whole image from the News Item in the feed, I now put a 'mini' image with a link, similar to how the News Item is being rendered with the normal view. [regebro]

Tested with Plone 4.0.10, 4.1.6, 4.2.5 and 4.3. Plone 3 is no longer supported, but may still work.

2.0 (2013-05-26)
  • Register the feed viewlet for IBaseFolder [erral]
  • Use 'index' instead 'render' for the viewlet class to allow overriding via z3c.jbot. [erral]
  • Now punts to using Plone 4.3's built in syndication under Plone 4.3. Note that since Plone 4.3's syndication is turned off by default, you will have to configure it before it works. [regebro]
  • File links go to the files web view instead of the file. Podcast readers should use the enclosure in any case. [Rudd-O]

Tested with Plone 4.0.10, 4.1.6, 4.2.5 and 4.3. Plone 3 is no longer supported, but may still work.

1.3 (2010-10-27)
  • collective.blog.feeds depends on fatsyndication. [regebro]

This version tested with Plone 3.3.4, 4.0b3, 4.0.10, 4.1.4 and 4.2b2.

1.2 (2010-06-30)
  • Forced reverse order in the sorting. [regebro]

This version has been tested with Plone 3.3.4 and Plone 4.0b3.

1.1 (2010-06-05)
  • Added credits to Bergen Offentlige Bibliotek. [regebro]
  • Plone 4 support. [regebro]

This version has been tested with Plone 3.3.4 and Plone 4.0b3.

1.0 (2010-05-16)
  • Initial release

This version has been tested with Plone 3.3.4.

Subscribe to package updates

Last updated May 31st, 2013

Download Stats

Last month:5

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.