Is the Silverstripe CMS as easy to deploy, maintain, and develop on as it appears?
content-management-system, php, silverstripe
Solution
I used Silverstripe to develop a heavily trafficked site for a company in the multimedia and entertainment industry. Most of the work was done a year ago, but there has been on going enhancement and maintenance work. I can give you specific details if you want -- DM me on Twitter or email me.
In short: if I could go back in time and do it over in another PHP CMS/Framework, I'd probably have used Drupal.
It could work well for a simple site that's not too deep and not too wide. But any site that has a complex IA will likely run into trouble.
Some issues I ran into:
Documentation was incomplete, fragmented and in many cases, non-existent.
The administration interface quickly becomes untenable with a site becomes wide and deep. They load every pane via javascript, and things slow to a crawl on a slow computer. (com. wiki note: fixed in 2.4)
Silverstripe is incapable of having URLs beyond the first level. Meaning, they only allow urls like `/about` and not `/about/team`. You'd need to do `/about_team`. (wiki note: fixed in 2.4)
The separation between Sapphire and Silverstripe is tenuous. Although an attempt has been made to loosely couple the two, it's difficult to truly separate them. (note: much better in 2.4)
Every major content type exists on the site tree. Silverstripe is a strictly page based CMS. For example, when creating blog posts, each individual blog post is an item on the site tree. This makes it impractical when scaling out a site with hundreds of blog posts. (note: fixed in 2.3 - ModelAdmin)
Frankly, it's slow. The admin is slow. The front-end is slow. opcode caching helps, but it's still slow. (wiki note: better in 2.4)
The templating system is weird. It allows you to use custom HTML, which is nice, but the template tags are a little limited. An if conditional in a template, for example, can only except a single `AND` or `OR`. You can't chain multiple ones together.
It's buggy. During the course of development, I fixed at least 10 bugs in Silverstripe core. Bugs I submitted to their bug tracker were not fixed for months, even when the fix was simple.
Problem
Although I haven't thought about deploying it on my own site, someone I know sent me a link to a CMS called SilverStripe that I've never heard of before. I read their site, looked at and played around with their demo, and so on. It looks like it's a CMS backed by a custom PHP framework that they call Sapphire. And from what I can gather on their website and using their demo, it potentially might be as good and easy as they say (once you get past any learning curve, which appears to be small, considering it looks a lot like other PHP frameworks and CMSes). Has anyone here ever deployed, maintained, or developed a CMS using SilverStripe? If so, could you shed some light on it, from a developer's point-of-view? I also found this earlier question about SilverStripe here on StackOverflow, but I'm more interested from a development point of view than a user or administrator point of view.