To create a filterable portfolio in WordPress, first organize each project consistently and assign it useful categories, skills, or tags. Then choose a portfolio plugin that supplies the content type and grid, a block that filters an existing Query Loop, or a custom post type and taxonomy. The right route depends on your editor, the filters visitors need, and whether projects must remain manageable when you change themes.
What do you need before adding filters?
A filterable grid works only when portfolio projects share a consistent structure and their terms are assigned predictably. Decide what every project should include, such as a title, featured image, short description, project link, and any details relevant to your audience.
Next, choose a small set of useful visitor-facing groups. For example, a design portfolio might use categories such as branding and web design, or skills such as illustration and prototyping. Avoid turning every descriptive detail into a filter: too many overlapping choices make the controls harder to use.
Which WordPress implementation should you choose?
| Route | What it provides | Best fit | Important consideration |
|---|---|---|---|
| Portfolio plugin with its own content type | Portfolio entries and a listing or filter interface; Filterable Portfolio documents a Gutenberg block and shortcode, while DinoFolio documents a listing block. | You want a packaged workflow for creating and displaying projects. | Check current features, compatibility, and required filter controls in the plugin listing before installing. |
| Filter controls for a Query Loop | Portfolio Loop Filter documents buttons based on used taxonomy terms that filter a Query Loop below them. | Your site already has a suitable public post type and uses the native Query Loop. | It does not create a portfolio post type or replace the Query Loop. |
| Custom post type and taxonomy | A developer-defined portfolio content model and a listing or template that queries its terms. | You need a tailored content model, display, or filtering behavior. | Requires development and ongoing maintenance. |
How do you create a portfolio with a plugin?
Filterable Portfolio
The Filterable Portfolio directory listing says activation adds a custom “Portfolios” post type. It documents a Gutenberg block and the [filterable_portfolio] shortcode. Shortcode options include show_filter for filter display and filter_by to choose categories or skills. This is a practical route when you want portfolio entries and a display mechanism together; confirm that the current controls and design options match your needs.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
#1 Best Overall
DinoFolio
The DinoFolio directory listing describes a custom portfolio content type with categories and tags, a Gutenberg listing block, and integrations for Elementor and WPBakery. The listing states WordPress 6.6 or higher as a requirement; treat that as a listing-specific requirement that may change, and verify it against the current plugin page and your site before installing.
How can you filter an existing Query Loop?
If your projects already live in a suitable public post type and your page uses a WordPress Query Loop, Portfolio Loop Filter may be a smaller addition than adopting a complete portfolio system. Its directory listing describes a block that creates buttons from taxonomy terms in use and filters the Query Loop below it. It does not create the portfolio content type or replace the Query Loop.
Rank #2
Before building the page around it, check that the post type and taxonomy you want are available in the block’s controls. Then confirm that the buttons and grid fit your theme and that visitors can understand the filter labels.
How do you build a custom portfolio post type?
A developer can register a dedicated portfolio post type, define a taxonomy such as project category or skill, assign terms to each project, and create a template or query that lists and filters the matching items. WordPress’s custom post type documentation explains that a taxonomy must be explicitly registered with register_taxonomy() and associated with the post type for query handling.
Rank #3
Keep the content model in a site-specific plugin rather than registering the post type in the theme. WordPress warns that post types registered in a theme disappear from the admin when you switch themes; separating content functionality from presentation helps preserve access to the projects after a redesign.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.How do you set up and check the portfolio?
- Define the project fields. Decide what each entry needs, such as title, featured image, short description, project link, and audience-specific details.
- Choose the filter terms. Create a concise, understandable set of categories, skills, or tags that visitors can use to narrow the grid.
- Pick the implementation. Use a full portfolio plugin, a Query Loop filter block for existing content, or a custom post type and template.
- Add representative projects. Enter several real examples and assign terms consistently so you can see how the filters behave.
- Place and configure the listing. Add the plugin’s block or shortcode, the filter block above its Query Loop, or your custom listing to the intended page; choose which terms to expose.
- Check the page at desktop and mobile widths. Try every filter, inspect what happens when no projects match, and open the individual project links.
- Review compatibility and recovery options. Check the plugin’s current WordPress requirements and your theme/editor setup. Use your normal backup or staging process before changing a production site.
What should you compare before installing a plugin?
- Content model: Does it create a portfolio post type, or only filter an existing Query Loop?
- Filter choices: Can visitors filter by the actual categories, skills, or tags your portfolio uses?
- Editor or builder support: The cited listings document Gutenberg support for Filterable Portfolio and DinoFolio; DinoFolio also documents Elementor and WPBakery integrations. Check the current listing for changes.
- Page scope: Do you need only a grid on one page, or also individual project pages, archives, and taxonomy pages?
- Theme independence: Will the project content remain manageable if the site changes themes?
- Site-specific compatibility: Confirm the plugin works with your installed WordPress version, theme, editor, and required behavior. Directory feature descriptions are not independent compatibility, accessibility, speed, or support tests.
WordPress.org’s portfolio tag directory displays active installation counts for listed plugins. Those counts are directory snapshots, can change, and do not establish quality, security, support responsiveness, or suitability for a particular site; use the features and compatibility that matter to your implementation instead.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




