When I first started messing around with WordPress many years ago it was simply known as a powerful blogging platform. Today, WordPress is a highly configurable content management system that can handle almost any type of web based platform (though not necessarily the best choice for everything!). One of the best aspects of WordPress is the unbelievable number and variety of plugins. For a client project I was tasked with build a custom Content Management System (CMS) utilizing the WordPress plugin Pods.
Pods utilizes the existing WordPress admin interface and supporting MySQL database to allow for the creation and management of custom objects. Objects can be very complex in nature and can take the form of many fields with customizable data structures. Complex relationships can also be defined between objects, such as many-to-many. Pods can also reinforce simple object creation and editing validation, such as required fields.
In general I like Pods but I did find a few negatives. First, performance can be rather slow so make sure you have a respectable WordPress hosting provider. Second, object customization is not always straight forward and some of the settings can be rather arcane and without much in the way of documentation. Third, I found a number of bugs such as cases where objects were not updating properly and the data export / import process plain broke. Finally, the underlying database objects created by Pods is somewhat non-standard and not exactly how you would personally build a well designed normalized database.
One final thing to note: development on a WordPress JSON restful APIs has been ongoing for several years and is set to become a default component soon. Leveraging upon this work, there is a Pods JSON API plugin. I made an attempt to configure the Pods JSON API plugin but I had several issues. Couple this with the fact that the Pods database structure is not ideal at all for fast queries that are needed to support an efficient API and I decided to handle my API by leveraging the Slim PHP Micro Framework.
In the end, I think Pods is an interesting choice for those wishing to leverage their existing WordPress infrastructure and expertise to build a highly customizable and powerful content management system. With it’s bugs and quirks, however, be prepared to spend at least a minimal amount of time getting setup and running.