I had a couple of requests from my clients to build a portfolio website recently. This was a very interesting experience, which led me to writing my own portfolio plugin. And here’s why.
As far as I know, there are two plugins that provide simple and quality solution to create a portfolio website at the moment: Jetpack Custom Content Types module and Portfolio Post Type by Devin Price and Gary Jones.
In fact, I used both of them and they worked without any problems. However, there was a little thing that bugged me. I had to add same custom fields for both projects I’ve been working on.
To do that I needed to use ACF or create a small plugin that added necessary fields. Although both of this solutions are OK, none of them felt right to me because I knew I could do better.
I was considering two ways of building this plugin. First was to fork the Portfolio Post Type and add custom fields to it. Second was to use WordPress Plugin Boilerplate as a starting point.
I chose the second because I have built many plugins with boilerplate and have all the tools set up to work with it. This means that I will spend less time keeping the plugin up to date, which is very important.
Portfolio Toolkit registers ‘portfolio’ post type, with two taxonomies: ‘portfolio_category’ and ‘portfolio_tag’. On top of that it adds a custom metabox with three fields
- Client – Client name for the project (e.g. Apple)
- Date – Release date of the project (e.g. June 2015)
- URL – Link to a live project (e.g. http://www.apple.com/)
And this is it. A simple solution for a simple problem.