JSM Adobe XMP / IPTC for WordPress

Version Information

  • Plugin Name: JSM Adobe XMP / IPTC for WordPress
  • Stable Version: 1.6.0
  • Author: JS Morisset
  • Description: Provides Adobe XMP / IPTC information from Media Library or NextGEN Gallery images using a shortcode or PHP class method.
  • License: GPLv3
  • Requires PHP: 7.2.34 or newer
  • Requires WordPress: 5.8 or newer
  • Tested Up To WordPress: 6.4.2
  • Last Updated: 3 months ago

How do I retrieve XMP data as an array?

$adobeXMP =& adobeXMPforWP::get_instance();

$xmp = $adobeXMP->get_xmp( $image_id );

echo '<p>Photograph by ' . $xmp[ 'Creator' ] . '</p>';

How do I include a shortcode in a post or page?

[xmp id="101,ngg-201"]

This shortcode prints all the XMP information for Media Library image ID "101" and NextGEN Gallery image ID "201". The XMP information is printed as a definition list <dl> with a class name of "xmp_shortcode" that you can style for your needs. Each <dt> and <dd> element also has a style corresponding to it's title - for example, the "Creator" list element has an "xmp_creator" class name. Here's an example of the definition list HTML:

<dl class="xmp_shortcode">
<dt class="xmp_credit">Credit</dt>
<dd class="xmp_credit">JS Morisset</dd>
<dt class="xmp_source">Source</dt>
<dd class="xmp_source">Underwater Focus</dd>
<dt class="xmp_hierarchical_keywords">Hierarchical Keywords</dt>
<dd class="xmp_hierarchical_keywords">What > Photography > Field of View > Wide-Angle > Fish-Eye</dd>
</dl>

The shortcode can also take a few additional arguments:

  • include (defaults to "all")

Define which XMP elements to include, for example:

[xmp id="101" include="creator,creator email"]
  • exclude (defaults to none)

Exclude some XMP elements, for example to print all XMP elements, except for the "creator email":

[xmp id="101" exclude="creator email"]
  • show_title (defaults to "yes")

Include / exclude the <dt> definition titles.

[xmp id="101" show_title="no"]
  • show_empty (defaults to "no")

Include / exclude empty <dd> definition values.

  • not_keyword (defaults to none)

Exclude a list of (case incensitive) keywords, for example:

[xmp id="101" not_keyword="who,what,where"]

To exclude a hierarchical keyword list, use hyphens between the keywords, for example:

[xmp id="101" not_keyword="who,what,where,who-people-unknown"]
Find this content useful? Share it with your friends!

One comment on “JSM Adobe XMP / IPTC for WordPress

Leave a Review