(Automatically) Importation of massive content

I've been asked to implement a solution to massively fill the content on my Plone site. They proposed me to look for an option similar to excel to add all the content in the same page and then automatically create the new type instances on the Plone site from that file (my work). The only thing I can't figure out is how to push over the info on Plone or Zope. Is there any script or tool for this purpose?

Thanks very much!!


Seconding Transmogrifier, and there is also collective.importexport https://github.com/collective/collective.importexport

plone.importexport should replace collective.importexport when using plone 5 for most usecases.
However neither is great for importing huge amounts of content as they both require a large zip file so you end up with a single request that would consume large amounts of RAM I believe. More work needs to be done to find ways to avoid that. One work around for now is to break the content into multiple zips.

1 Like

Define "massively".

Plone is in general bad for creating "massive" amounts of content objects - for a variety of reasons. Creating or updating of about 10.000 content objects in one of our projects usually takes 30-45 minutes..which is horribly bad. General advise: Plone is a CMS and should not be mis-used for frequently changing data or content as stuff coming from batch or mass imports. Usually I would store such data in a secondary database - either RDBMS or No-SQL. Updating the 10.000 records in ArangoDB takes 2 seconds and 30-45 minutes in Plone. Feel the difference.


1 Like

Thanks for your replay!
I know plone.importexport, I'm also working with it, but there I found several problems with it; the most important one is that it doesn't import/export main content (just title, subtitle and images).

And it doesn't solve what I'm looking for, I need to find something similar to an excel page where the user can fill a unified table of content to be loaded to Plone after. That means that hundred of different items (same content type) need to be created from that 'table of content'.

It does handle the page content but I think it has to be a .html file for each page. I'm not sure you can load the page content into a csv file itself.

Your usecase is one that it is designed to solve.