The PRO version stores Project Details (Director, Year of Production, Client, What we did) with every portfolio post. In a block theme you display them with the Site Editor — this guide covers classic themes, where the plugin gives you a shortcode and a PHP template tag instead. Both are available since WPZOOM Portfolio PRO 1.5.0.
Table of Contents
Add this shortcode anywhere shortcodes work — the post content, a text widget, or a page builder module:
[wpzoom_portfolio_project_details]
On a portfolio post it prints the filled-in Project Details as a list. Fields you left empty are skipped automatically, and if a Director URL is set, the name becomes a link:

| Attribute | Default | What it does |
|---|---|---|
id |
current post | Show the details of another portfolio post by ID |
fields |
director,year,client,skills |
Which fields to show, and in what order |
show_labels |
yes |
Set to no to print only the values |
class |
— | Extra CSS class(es) on the list |
For example, to show only the client and year, without labels:
[wpzoom_portfolio_project_details fields="client,year" show_labels="no"]
In a classic theme or child theme, call the template tag directly from the single portfolio template (usually single-portfolio_item.php):
The function_exists() check keeps the site safe if the PRO plugin is ever deactivated.
The template tag accepts the same options as the shortcode:
array( 'client', 'year' ),
'show_labels' => false,
'class' => 'my-project-details',
) );
?>
The first argument is the post ID — pass 0 (or nothing) for the current post.
The output is a plain list with one class per field, so you can style each detail independently:
-
Director
Jane Doe
…
A quick starting point for your stylesheet:
.wpzoom-portfolio-project-details {
list-style: none;
margin: 0;
padding: 0;
}
.wpzoom-portfolio-project-details__label {
font-weight: 700;
margin-right: 6px;
}
“Director” comes from the plugin’s video-portfolio roots. If your portfolio shows design work, photography, or client projects, rename the fields under Portfolio → Settings → Project Details Field Labels — e.g. “Designer” instead of “Director”. The shortcode, the template tag, and the editing panel all follow the new labels automatically.
If you want full control over the HTML, fetch the raw data instead:
array( 'label' => 'Director', 'value' => 'Jane Doe', 'url' => 'https://…' ), … )
foreach ( $details as $field => $detail ) {
echo '' . esc_html( $detail['label'] ) . ': ' . esc_html( $detail['value'] ) . '
';
}
?>
Only fields with a value are returned. On older PRO versions (before 1.5.0) you can read the meta directly: get_post_meta( get_the_ID(), 'su_portfolio_item_client', true ) — the meta keys are listed in the block theme guide.
What’s Next?