Suppose you have a content-type that, after 5, 6 websites you do on your company, you still use it, without changing it.
I’m starting to think that copying this content-type to every website you create is not the “optimal” solution… but at the same time, I think creating a full blown package (egg) for only one content-type is overkill. (It would contain a workflow, a content-type definition and a custom view). And by this approach, it means a Plone site would have a lot of packages to install (too many dependencies is bad, I think).
My question is: for you guys (girls) that create a lot of websites to a lot of companies, you see a pattern for a lot of content-types. Do you create a package for only one content-type, or a single product with a bunch of them you use the most?
(I was thinking about creating company.archetypes.mycustomtypethatiusealot)
I create a package for any content I need. If a second site uses only some of that content, I’ll refactor into separate packages. If you make a superpackage that includes all the dependencies then you don’t need to install many separate packages.
So, for instance, for one customer I have three sites. Two share a theme – that’s a package. The third has the theme, a couple of content types (they’re another package), and a security package. The content-type package depends on the theme and security packages, and the security package depends on two or three 3rd-party packages. I simply install the content-type package and everything else gets pulled in automatically.
Not packaging your content types seems so 20th century, and also so much work.