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.)
September 14, 2022
Why build software of our own? Any good story of a project starts with a problem that needs to be addressed. We work with many clients in the manufacturing vertical and during our time spent with them, we noticed a challenge with synchronization with their dealers. Much of the dealers’ in-office time was spent hunting […]
May 23, 2022
Is local the real secret sauce leaders deploy for a successful development project? Rod Smith, Volano Software Partner, and Co-founder defines the benefits of working with a local development shop.
March 25, 2022
Are you relentlessly passionate about every detail and every pixel when it comes to front-end development? We’re looking to add a Senior Front-end Developer to join our growing team. At Volano, you will work with a variety of clients and projects alongside a remarkable team of back-end and front-end developers, designers, and management to build […]
March 15, 2022
It was 8:00 am on a sunny morning in Hawaii in January. People were hustling to get to their typical morning responsibilities. Cars were on the highway commuting to work, school, and other destinations when all of a sudden chaos breaks out. People start to panic, kids have been thrust down sewers for safety, everyone […]
February 7, 2022
As we continue to grow, we’re looking for an experienced ASP.NET MVC Developer to join our team. At Volano you will work within our high-functioning team to build web and mobile applications for our clients that make their work easier.
November 5, 2021
As we continue to grow, we’re looking for an experienced Senior Front-End Web Developer to join our team. At Volano you will work within our high-functioning team to build web and mobile applications for our clients that make their work easier.