Skip to main content
The Portfolio custom post type is a specialized content type designed for managing portfolio projects in Visual Portfolio. It provides a complete portfolio management system with categories, tags, and custom metadata.

Overview

The Portfolio post type is registered in /classes/class-custom-post-type.php:122-227 and includes:
  • Custom taxonomies (Categories and Tags)
  • Featured images
  • Post formats support
  • Custom meta fields
  • Archive pages
  • User roles and capabilities
The Portfolio post type can be disabled in Visual Portfolio settings if you prefer to use your own custom post types.

Post Type Registration

The Portfolio post type is registered with these parameters:

Taxonomies

Portfolio Categories

Hierarchical taxonomy for organizing projects:
Usage in queries:

Portfolio Tags

Non-hierarchical taxonomy for flexible classification:

Archive Configuration

Portfolio archives are managed through Visual Portfolio settings:

Archive Page

Designate a WordPress page as your portfolio archive:
This page becomes the portfolio index and affects:
  • Archive URL structure
  • Breadcrumb navigation
  • Portfolio menu links
Customize portfolio URLs:

Custom Meta Fields

Video Format URL

Store video URLs for video format posts:
Usage in queries: From /classes/class-get-portfolio.php:763-768:
Control image crop positioning:
From /classes/class-get-portfolio.php:739:

Views Count

Track project views:

Reading Time

Display estimated reading time:
From /classes/class-get-portfolio.php:744:

User Roles and Capabilities

Visual Portfolio adds custom roles for portfolio management:

Portfolio Manager

Full access to portfolios and saved layouts:

Portfolio Author

Manage own portfolio items:

Querying Portfolio Items

Basic Query

Filtered by Category

Recent Projects with Videos

Display only video format projects:

Admin Customization

Custom Columns

Portfolio list shows thumbnail column:

Taxonomy Filters

Filter portfolio items by category and tag in admin:

Item Data Structure

When queried, portfolio items return this data structure (from /classes/class-get-portfolio.php:727-746):

Filter Taxonomies

Control which taxonomies appear in Visual Portfolio filters:
Default allowed taxonomies (from /classes/class-get-portfolio.php:233-241):
  • Any taxonomy with “category” in the name
  • jetpack-portfolio-type
  • product_cat (WooCommerce)
  • Custom taxonomies defined in settings

Settings Configuration

Enable/Disable Portfolio Post Type

Custom Filter Taxonomies

Add taxonomies to filter support:

Migration and Compatibility

Visual Portfolio includes migration code for legacy versions (from /classes/class-migration.php:150-152):

Example Implementations

Portfolio Archive with Custom Query