When it comes to adding a portfolio section to your WordPress website, there’s more than one way to do it. Before taking a look at three most common ones allow me to explain why allowing a theme to handle content generation usually isn’t a great idea.
For those of you already running a website, WordPress or not, it is very likely that it’s your content that defines you. Not shiny buttons or complex banners, content. You don’t want what ever it is you’re currently wearing to define you as a person, same should apply to your website. You could switch to another WordPress theme that completely changes the layout, your content must remain the same and all the data should still be there.
If you think of your website as an Oreo biscuit, tools that allow you to generate content (WordPress installation and maybe some plugins) are the bottom part, your content is creamy middle and top part is what site visitors see (normally, this would be WordPress theme you installed).
Try combining top and bottom parts — yes, you’d have to crush the biscuit — and see what that does to the middle. Not as pure as it used to, with all those crumbs in it and parts of it falling off.
Themes that Register Portfolio Custom Post Type
This is the crumbled Oreo. It can still be delicious but restoring its original look is very difficult. Take a look at this scenario:
- You just set up a new website, installed WordPress and picked a theme that has “Portfolio” menu in the dashboard
- You add projects for several hours until all of your work is showcased
- Everything looks great
- A year later you want to refresh your website and pick another WordPress theme
- You install the theme and “Portfolio” menu is either gone completely or it doesn’t show any of your projects
- All portfolio projects URLs now return 404 errors
- You panic?
Worst of all, what happened there is not a bug. The first theme you used registered a custom post type, let’s say it was called ‘theme_1_portfolio’. The second one either doesn’t register a post type for portfolio at all — “Portfolio” menu is gone — or registers ‘theme_2_portfolio’ post type, keeping “Portfolio” menu, but not showing any of ‘theme_1_portfolio’ posts.
Luckily, all of your data is still in your WordPress database, it’s just that you can’t see it. Unless you value a theme more than your content I can’t imagine you being OK with this. Never let a theme do plugin’s work.
Themes that Use Posts or Pages to Display Portfolio Projects
This method is much better because it uses WordPress native functionality to add projects to the database. No matter which theme you install, your posts and pages will always be there.
What these themes do is simply apply a different layout to posts from your designated portfolio category or pages that use portfolio project Page Template.
The problem with this is that posts and pages are not exactly what you think of when you hear the word project. There’s also the extra hoop to jump through by assigning a certain posts category to be your portfolio category or using a certain Page Template for your portfolio projects. But at least switching to another theme won’t hide your projects.
As you know, WordPress doesn’t have portfolio functionality built-in. Yes, it is possible to interpret posts or pages as freely as you’d like, but they will still be posts and pages pretending to be portfolio projects, even if no one but you knows.
Plugins are what adds functionality to WordPress and because of that they seem like a logical choice for adding portfolio to your website. A portfolio plugin would:
- Register portfolio custom post type and any related custom taxonomies
- Try to use the template file in your theme that is in charge of showing single posts as base and add any additional project data (usually stored as custom fields) to it
This way you still have a separate “Portfolio” section in your WordPress dashboard and your projects are not allowed to mingle with your posts and pages, but they also won’t disappear when you switch to a new theme.
And that’s what we’re working on here at ThematoSoup. A simple, yet powerful WordPress plugin that will allow you to add portfolio section to any WordPress theme and keep it the moment you decide there’a better theme for you out there.
We do have most of it done, but if you’re in need of such plugin, you can help make it better by letting us know which features you’d find most beneficial.
Is one custom taxonomy enough, or would you prefer to be able to register as many as you wish? How about custom fields, would a pre-defined set work, or do you prefer to set your own? Help us make it better.