Concrete5 is an open source PHP-based content management system. The look and feel of the application is very nice. It makes use of lightboxes to display forms and the administration section is very stylish.
For a developer, the learning curve is a tad steeper than I would have liked. The first problem is documentation. Concrete5 has the same problem as many other open source applications I have used. Development on the application and bug fixing seems to take priority over documentation. There is a section on the C5 site that lists all the classes, properties and methods of the application, but it lacks detail. Arguments and return values are often not included or explained very well. I spent a lot of time searching and posting to the forums. Community response was pretty good, though.
On top of that, the entire application uses OO and MVC. Even though I’m a .Net developer, my PHP style has always been top down, function based programming. I don’t really like how OO is done in PHP currently. So, it took a bit of getting used to especially since I don’t have an advanced IDE for PHP. No intellisense for me. Bummer!
The first key to mastering C5 is understanding how the templates work. I was actually really impressed. There are just some nuggets of PHP to put in the HTML. There’s even a video on the website that shows you how to convert any layout to a C5 template. Very cool! (I still don’t quite get Page Types, though.)
Then, I had to play with some of the blocks. The blocks that generate links for the main menu and links to other pages actually work pretty slick. Creating pages and setting page permissions also didn’t take long too figure out. So far, so good.
Now, how do I bolt on something new? That’s where Single Pages can come in. Create a single page under the site map section of the Admin panel. Then, you can create a file in the single_pages directory with the same name. This file gets included into the template automatically by C5. User permissions and everything all take effect. That made it really easy for me to get started with my project without having to wire up a bunch of stuff. I even got to write the addon in my preferred style (I wasn’t stuck doing OO and MVC for my piece).
My project was a document management system. I leveraged the existing groups and users to control access to files that were stored on the filesystem. Admins could upload and assign access. Users could sign in and see docs assigned to their group and specifically to them. I was even able to modify the user admin section of C5 to handle attributes for my app without too much trouble. The only thing I had to watch out for was my SQL statements. I had to make sure I was referencing my addon database explicitly enough so the system wouldn’t try to run queries against C5’s content database.,
As a content management system and as a development platform, Concrete5 gets one thumbs up from me. (It would have received two if the docs were better.)
June 13, 2023
Data is like a vast set of building blocks, each has different shapes, sizes, and colors. Just like each brick has its unique utility, every piece of data carries a unique piece of information. As a business owner, how can you possibly start understanding what all the pieces of data from those fancy reports mean? […]
June 2, 2023
For small manufacturing companies with less than 100 employees and revenues of around $20–50 million, several key factors contribute to their success. Here are some important considerations: By focusing on these key factors, small manufacturing companies can enhance their competitiveness, achieve sustainable growth, and maintain profitability. It’s important to adapt these factors to the specific […]
June 1, 2023
Several years ago, I was working on a product that required some attention from the software product teams. This happens to all software over time because a user’s needs change, features need to be added, and bugs happen (naturally). The undertaking was large enough, so our team agreed it would be ideal to talk with […]
May 30, 2023
There’s an ongoing debate: custom software versus off-the-shelf Software as a Service (SaaS). A few misconceptions tend to cloud everyone’s judgment and influence decisions in this area. It’s time to put these myths to rest and bring clarity to the conversation. Myth 1: Custom Software is Outdated Custom software is inherently outdated, which couldn’t be […]
March 15, 2023
Why continue to utilize a mess of spreadsheets to run your operations? We think there’s a better way. Here are the top 7 reasons you should switch to custom software.
February 3, 2023
Wait. What’s the problem again? Several years ago I was working in Healthcare for a tech startup. At the time, healthcare systems could not bill patients until a chart was signed off and locked by a provider (MD, PA, or NP). The provider had to step through every single screen and check a box regardless […]