I would like to be able to setup a photo gallery on my site that can be filtered by category and subcategory.

I like the idea of using the Grid/Matrix fieldtype for each gallery so you can see all images in the gallery from the Control Panel at the same time. However, I don't see where to set a category/subcategory for every row in the Grid/Matrix field.

I thought about adding another column in the Grid/Matrix field where users could check off the appropriate categories and subcategories, but I feel like this could get really complicated/inefficient on the template side of things.

I was hoping to find a good tutorial on creating a filter-able photo gallery using ExpressionEngine but have not had any luck. I would greatly appreciate any advice on how to tackle this project!

3 Answers 3


I think you're on the right track. I'd create a Matrix column that is a dropdown or multiselect. Then output those variables as CSS classes or data attributes and handle the sorting on the client side using something like this: http://mixitup.io/#Documentation.

<ul id="filters">
 <li data-filter="{matrix_select_col_name}>{matrix_select_col_label}</li>

 <div data-content='{matrix_select_col_name}'><img src="foo.jpg"></div>
  • This is exactly what I was going to suggest.
    – CreateSean
    Oct 20, 2013 at 12:51
  • Thank you so much for your suggestion! By any chance have you used the MixItUp plugin within a slideshow being controlled by the jQuery cycle plugin?
    – Chandra
    Oct 20, 2013 at 17:10

My recommendation would be Channel Images from dev demon which should achieve what your looking for.

  • I have used Channel Images on a much smaller project before and really liked it, but I'm trying to stick with as much ExpressionEngine out of the box as possible. Thanks so much for your suggestion!
    – Chandra
    Oct 20, 2013 at 17:02

If you want to keep "out of the box" there's no harm in using a gallery channel and have one image per entry.

This would then offer many ways to filter - categories - status - author - date (range) - keyword search - dynamic parameters - segment values ... or a combination of any of the above.

  • Thank you so much for your input! This is definitely ideal from my standpoint, but I've found this setup is not very user friendly from my not-very-computer-savvy clients. If there was a way to see the images from the Content | Edit | Gallery Images list of entries in the ExpressionEngine control panel, I would definitely use this solution.
    – Chandra
    Oct 28, 2013 at 19:56
  • You can customise the entrie slist with zenbustudio.com/software/zenbu - that will allow you to add thumbs to the list Oct 29, 2013 at 13:01
  • Wow! That add-on looks fantastic! I'm definitely going to have to look into this option.
    – Chandra
    Oct 30, 2013 at 20:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.