Is Plone doing enough to keep up with other CMSes?

I do Drupal for a living and I like the system. However I've always been intrigued by Plone and wanted to learn it well to broad base my knowledge of CMSes in general. I've played around with Plone in the past and was both mesmerized and repulsed by it -- depending on the day.

But then again here is what I saw as the advantages of Plone

  • Python sweet Python
  • Built on battle hardened and uber mature Zope 2
  • Zope 3 style which is now available in Zope 2 also and therefore in Plone
  • Objects and not SQL
  • True separation of configuration and content (unlike Drupal where configuration and content is totally mixed up in the database)
  • Very powerful system to make custom content types (unfortunately not via a UI)

However it surprised me that there was nothing that I could find equivalent to views ( ) and that taxonomy (i.e. classification) was not a first class citizen. Every Plone product seemed to take its own approach to taxonomy. All in all, though I loved its extreme and idealistic approach, it always struck me that everything was so darn difficult to accomplish in it.

I've really been hoping for Plone to succeed and every few months will explore its RSS feeds only to go back dejected.

I thought I'd test out Plone 4. The new feature list in Plone 4 was totally underwhelming to me ( ).

Drupal 7 new features ( and Wordpress 3 ( ) seem to have done tons more in their new major releases.

Moreover replacement to Archetypes through Dexterity ( ) is also a great step forward. So while Plone 4 itself may be an improvement over 3.x is it enough to keep Plone in the reckoning amongst other CMSes?

Which brings me to my question:

Is Plone on a steady decline? Whats the future of Plone? Am I wrong in my assessment that Plone is not adding functionality and features at the rate other top tier CMSes are?

This seems to confirm my fears.

Should I give Plone 4 a try and make it my "second" CMS?


Let me get the bias out of the way first: I'm one of the co-founders of Plone, so make of that what you will. ;)

Plone 4 is in many ways an "intermediary" release — the original plan was to make it into a large release with new UI approach (new layout system Deco), improved type definition system (Dexterity) and improved theming story (currently referred to as XDV, name will probably change).

Along the way, we realized that we needed a smaller release before we did that, so the major improvements got pushed to a new Plone 5 milestone, and Plone 4 was turned into a infrastructure / cleanup type release.

With that goal in mind, the team delivered the fastest Plone yet (it trounces Drupal, Joomla and WordPress for speed), improved a lot of very important infrastructure (files are now stored outside of the database, it uses much less memory than it used to, and scales a lot better to large number of parallel requests).

The innovation is still ongoing, and now that Plone 4 is out, we're fully focused on delivering Plone 5, which should have a lot of the new features and improvements that were originally planned as Plone 4. In the meantime, we have an extremely solid and fast base to work from, and deploy customers on.

You can also make make use of a lot of the Plone 5 tech in Plone 4 already — examples include the aforementioned Dexterity type definition system, the XDV theming system, and several other infrastructure improvements like the Chameleon template language (adds ~50% speedup for most pages).

So, no — we're not adding features at any slower pace — if you look at the source code history and activity instead of Google Trends (which isn't a very useful metric for something as niche as a CMS system), you'll see that there are more active developers and more code improvements than ever before.

Yep Collections do most of what is described by that description of Drupals Views. One thing that collections don't do out of the box is the grouping/taxonomy. There are additional plugins that can help do that such as collective.collection.yearview. Taxonomy options could be stronger but in reality nested collections work for most use cases.

As for the future of plone? Plone's popularity has remained static for the last couple of years as it has gone through it's massive internal restructuring. It's lost developers and gained developers. Compared to the rise Drupal and CMS's in general that may look like decline. The important thing now is that, due to that restructuring, Plone is now very developer friendly. Due to Diazo/XDV which most Plone integrators are switching to, Plone is now very designer friendly. It's also now fast and just as secure and flexible as it always has been. Expect Plone to start getting a lot more outside attention and growth from now on.

As Limi mentioned the mantra has been 'Plone 4 is the evolutionary release, Plone 5 is the revolutionary release'. As DisplacedAussie said, look at 'Collections' in Plone, they are like saved searches and combined with the Collections Portlet are pretty powerful.

Coming up in Plone 5 is the Deco/Tiles system for content editing, this is going to be really pretty amazing, and you can see in initial preview of it here:

Basically the entire page is made up of composite elements, each one is a first class item and addressable with its own URL. They can be dragged about the page on a grid as you see fit.


I know this question has already been answered long ago and that my answer is not about Plone but you may try to check ProcessWire:

It is an Open Source CMS written in PHP with jQuery-like syntax. I am yet to implement it in a project but I am learning it as it looks very free-form and flexible.

Take a look at this:

You can model any custom data type you want and treat it as a page or as an asset for using somewhere else. What is more, ProcessWire does not assume anything about your markup or even the response type for a HTTP request. It is up to you whether a given request returns a HTML page, a JSON response, a PDF file or an RSS feed.

It seems PW is also quite robust, there are websites with tens of thousands of pages running on it.

Need Your Help

Java Method invocation vs using a variable

java performance

Recently I got into a discussion with my Team lead about using temp variables vs calling getter methods. I was of the opinion for a long time that, if I know that I was going to have to call a simple

How to change page title with routing in Angular application?

angular angular5

Is there any npm module/ other way like React-Helmet that allows us to change page title as we route through our Angular application?