Easy Photography Portfolio


Building a photography portfolio for WordPress should be easy. So we made a plugin to help you with that!

Quick Overview

Easy Photography Portfolio is based on the idea of albums with images that can optionally be grouped in categories!
By default, albums and images are displayed in a masonry layout. You open up an album to see all the images. then click on an image to look at it closer.
I think it might be easier to explain with a demo.

Plugin Demo

How to setup

The plugin is easy to use to setup, but to make it even easier for you, I’ve made this video tutorial:

You can also read the full setup guide here

Designed for Photographers

We love the WordPress community and wholeheartedly agree with the WordPress Philosophy.

Great software should work out of the box, without the user having to adjust oceans of buttons and knobs.
That’s why Photography Portfolio is designed to be as easy to use as possible.

Photography Portfolio plugin is founded upon years of experience in building Premium WordPress Themes for Photographers. We’ve seen it all, great and not-so-great websites, big names, and absolute beginners. We have crystallized the formula of a high-quality portfolio into a simple WordPress plugin that you can use with any WordPress theme or your custom WordPress site!

It all comes down to the simple structure of a real Portfolio book.

You own a Portfolio album for, let’s say your Wedding Photography. If you happen to do street Photography too, you also probably have another album that has only your best street photography prints.

That’s exactly what Photography Portfolio does for you online. You create albums, add images, and in case you have a huge portfolio, you can categorize albums too.

Then your visitors are able to open any album, quickly scan all of the images, or view them one by one. Simplicity is key!

Our Story

We have been designing WordPress Portfolio themes for Photographers for years. In that time we’ve distilled the simplest and most effective ways of building an online Portfolio.

We decided that it is long overdue to give back to the community. So we built a reliable plugin that anyone can use, be it a new Photographer, an existing Customer, or a Developer. At the same time we built the Photography Portfolio Plugin so that we can use it ourselves for our existing customers, yet making it flexible enough so that it can be used in any theme.

Developed for Extensibility

Out of the box, Photography Portfolio is built using Masonry Layout (think Pinterest). Quite simply – it’s the layout most easily portable to any website layout while keeping the feel of the brand.

Warning: Strong developer language ahead.
For some, a masonry layout might not be enough, it sure isn’t enough for our Photography WordPress themes, because of that, this plugin is packed with Actions and Filters. Not only in PHP but also the JavaScript side.
You can easily extend the plugin with your own custom archive and single-view layouts. Customization is easy as Photography Portfolio plugin templates are based on get_template_part() function, similar to the way WooCommerce plugin has a custom template function. That brings a lot of customization power to the table. Pick any part of the view, and append your own template bits or completely rewrite the templates.

The JavaScript side is also very opinionated and easily extensible. You can use filters and actions to either modify the existing functionality, for example modifying the core masonry layout just a bit or completely initialize a brand new layout (like Packery or Horizontal Scroll). If you decide to build a custom view, you can utilize the existing JavaScript hook structure to let the plugin handle all the little things for you.

WordPress Themes

We also build premium WordPress themes for Photographers. Have a look at our Portfolio and maybe you fall in love with one of them!

Because our business is to build WordPress themes, this is not “Photography Portfolio Lite” with a billion up-sells. This is a fully featured Photography Portfolio plugin with albums, images, categories, a Pop-up gallery and even video support.

We respect our users and believe that one can recognize quality on their own, without being bombarded with constant “buy extra functionality” junk. We know we build awesome ship, now you know it too. You can have a look at our premium stuff when you feel like it, if not – that’s cool too. Especially if you’re just starting out, you might have to cut some corners and bootstrap everything on your own, and even then, we truly believe this plugin is going to do wonders for you! Pick a simple minimalistic theme, install the plugin, and enjoy a clean portfolio website that you can grow on your own!


This plugin requires at least PHP 5.4

You can read the full setup guide here or watch the video tutorial

  1. Upload “Photography Portfolio” plugin to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Add a few Portfolio entries in “Portfolio -> New Portfolio Entry”
  4. Make sure your portfolio entries have a thumbnail.
  5. That’s it! Enjoy your Portfolio!


Installation Instructions

This plugin requires at least PHP 5.4

You can read the full setup guide here or watch the video tutorial

  1. Upload “Photography Portfolio” plugin to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Add a few Portfolio entries in “Portfolio -> New Portfolio Entry”
  4. Make sure your portfolio entries have a thumbnail.
  5. That’s it! Enjoy your Portfolio!
Is it easy to set up ?

Easy as pie. Watch the video – everything you need to know in 7 minutes:

Is it Developer Friendly?

Yes. Very friendly.
We use this plugin in all our themes, and it’s important to make it easily extendable.
Browse the source on Github: https://github.com/justnorris/easy-photography-portfolio

Any examples on how to extend or integrate the plugin in my theme?

More to come in time.
For now, there is this wiki article: https://github.com/justnorris/easy-photography-portfolio/wiki/Useful-Snippets


a great plugin

Simple to use.
Great result.
It’s taken my website from embarrassing to something to be proud of.
Thank you.

Awesome plugin and prompt support

This is so easy to use. On top of being an excellent product, the creator was super fast to respond to a support question I had. I highly recommend it, especially for people looking to make a photo portfolio

mobile meets full screen at last

This gallery can display images VERY well on both mobile and on desktop. I’ve been looking everywhere for this. It is made for photographers and it rocks for photographers.

Super easy and super functional!

I’ve set up my portfolio literally in a couple of minutes. Needed some support from the author, as my theme was somewhat messing with the plugin and @justnorris was extremely helpful resolving my issues with simple tweaks. Thanks again!

Read all 8 reviews

Contributors & Developers

“Easy Photography Portfolio” is open source software. The following people have contributed to this plugin.


“Easy Photography Portfolio” has been translated into French. Thank you to the translators for their contributions.

Translate “Easy Photography Portfolio” into your language.

Interested in development?

Browse the code or subscribe to the development log by RSS.



  • Fix compatibility issue with WooCommerce. Thank you @miraaz for reporting it.


  • Increase the /portfolio/ archive limit from default WP setting to 100


  • Fix lightGallery social sharing issues, for real.
  • Close the whole gallery on ESC key
  • Add options to disable thumbnails or hide them by default
  • CSS Improvements
  • Reorganize settings this much -> 👌
  • Make a few more strings translatable


  • Translations are now working!
  • Trigger phort.lazy.loaded_item after each lazy-loading item has loaded
  • Fix lightGallery social sharing issues
  • Improve inline documentation
  • Better masonry alignment


  • Better default setting management. Defaults are now used by….default. Even before the options object is populated. Yay.
  • Set image height to auto, because as it turns out some themes don’t do that out of the box.
  • Introduce phort_set_defaults, deprecate setting defaults with hooks
  • Refactor a lot of code, hopefully making it easier to read
  • You’re actually reading this. I like you. Here, have a cookie 🍪


  • Show a message with a link to a setup guide when the plugin is activated
  • Add a default portfolio entry if none already exist
  • Add a default portfolio page and automatically set it up in the settings
  • Add a settings link in plugins page
  • Update Tested up to tag


  • Add option to disable the popup gallery
  • Add WPML Compitability ( thanks to @vukvukovich from WPML )
  • Update CMB2


  • Make sure images have 100% max width, some themes don’t do that by default
  • Add actions for to make it easier to tap into the templates: phort/{archive|gallery}/loop/{start|end}


  • Make sure all top level template wrappers utilize phort_class()
  • More elaborate plugin settings with dropdowns instead of checkboxes
  • Add permalink class .PP_Entry__permalink


  • Always make sure an image exists before trying to display it


  • Add function phort_is_front_page()
  • Add play button overlay on videos
  • Validate layouts before returning phort_slug_current() value


  • Correctly set-up postdata in single portfolio layouts
  • Revolutionary new UI when creating a new portfolio entry ( fixed subtitle alignment )
  • Hide layout setting dropdowns if there are no layouts to choose from.
  • Clarify code and comments
  • By default load 100 portfolio entries. If you need more, you’re responsible for displaying them properly. Why would you need a portfolio with more than 100 albums ?
  • Remove filter phort/get_template.
  • Introduce filter phort/get_template/{$base}
  • Allow themes/plugins to modify EPP Defaults


  • Fix broken portfolio links
  • Improve JavaScript hooks
  • Other minor improvements


  • First Release!