{"id":180717,"date":"2023-11-30T17:06:09","date_gmt":"2023-11-30T17:06:09","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/my-wp-photos\/"},"modified":"2026-02-14T20:12:42","modified_gmt":"2026-02-14T20:12:42","slug":"my-wp-photos","status":"publish","type":"plugin","link":"https:\/\/ast.wordpress.org\/plugins\/my-wp-photos\/","author":15602155,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0","stable_tag":"1.0","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"My WP Photos","header_author":"Marcus Burnette","header_description":"Add your WordPress Photo Directory photos to your website as a gallery.","assets_banners_color":"aeb5c7","last_updated":"2026-02-14 20:12:42","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/mburnette.com\/my-wp-photos","header_author_uri":"https:\/\/mburnette.com","rating":5,"author_block_rating":0,"active_installs":0,"downloads":2037,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"0.0.1":{"tag":"0.0.1","author":"mdburnette","date":"2026-01-05 19:30:06"},"1.0":{"tag":"1.0","author":"mdburnette","date":"2026-02-14 20:12:42"}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3461493,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3461493,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3461493,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3461493,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.0.1","1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3461493,"resolution":"1","location":"assets","locale":"","width":2478,"height":1860},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3461493,"resolution":"2","location":"assets","locale":"","width":2462,"height":1598},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3461493,"resolution":"3","location":"assets","locale":"","width":2478,"height":1424},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3461493,"resolution":"4","location":"assets","locale":"","width":2464,"height":1956}},"screenshots":{"1":"WP Photos Gallery block in the editor with live preview and sidebar controls for username, photo count, columns, aspect ratio, size, random order, captions, and EXIF.","2":"Front-end gallery display with captions enabled, showing photo content under each image.","3":"Front-end gallery display with EXIF metadata enabled, showing camera settings for each photo.","4":"Front-end gallery display with a 3-column layout and no captions\/EXIF for a clean image grid."}},"plugin_section":[],"plugin_tags":[148857,2466,210,2248,205],"plugin_category":[50],"plugin_contributors":[209348],"plugin_business_model":[],"class_list":["post-180717","plugin","type-plugin","status-publish","hentry","plugin_tags-block-editor","plugin_tags-directory","plugin_tags-gallery","plugin_tags-photography","plugin_tags-photos","plugin_category-media","plugin_contributors-mdburnette","plugin_committers-mdburnette"],"banners":{"banner":"https:\/\/ps.w.org\/my-wp-photos\/assets\/banner-772x250.jpg?rev=3461493","banner_2x":"https:\/\/ps.w.org\/my-wp-photos\/assets\/banner-1544x500.jpg?rev=3461493","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/my-wp-photos\/assets\/icon-128x128.png?rev=3461493","icon_2x":"https:\/\/ps.w.org\/my-wp-photos\/assets\/icon-256x256.png?rev=3461493","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/my-wp-photos\/assets\/screenshot-1.jpg?rev=3461493","caption":"WP Photos Gallery block in the editor with live preview and sidebar controls for username, photo count, columns, aspect ratio, size, random order, captions, and EXIF."},{"src":"https:\/\/ps.w.org\/my-wp-photos\/assets\/screenshot-2.jpg?rev=3461493","caption":"Front-end gallery display with captions enabled, showing photo content under each image."},{"src":"https:\/\/ps.w.org\/my-wp-photos\/assets\/screenshot-3.jpg?rev=3461493","caption":"Front-end gallery display with EXIF metadata enabled, showing camera settings for each photo."},{"src":"https:\/\/ps.w.org\/my-wp-photos\/assets\/screenshot-4.jpg?rev=3461493","caption":"Front-end gallery display with a 3-column layout and no captions\/EXIF for a clean image grid."}],"raw_content":"<!--section=description-->\n<p>My WP Photos lets you display WordPress Photo Directory images on your site using either:\n- the <code>[wp_photo_directory]<\/code> shortcode, or\n- the <strong>WP Photos Gallery<\/strong> block in the block editor.<\/p>\n\n<p>Both the shortcode and block support the same settings:\n- <code>username<\/code>: wordpress.org username (required unless set as plugin default)\n- <code>count<\/code>: number of photos to display (any positive number)\n- <code>columns<\/code>: number of columns (1-6)\n- <code>aspect<\/code>: image aspect ratio. options: <code>square<\/code>, <code>landscape<\/code>, <code>portrait<\/code>\n- <code>size<\/code>: photo size from the directory. options: <code>medium<\/code>, <code>large<\/code>, <code>thumbnail<\/code>, <code>medium_large<\/code>, <code>1536x1536<\/code>, <code>2048x2048<\/code>, <code>full<\/code>\n- <code>random<\/code>: set to <code>true<\/code> to randomize photo selection (not only most recent photos)\n- <code>show_caption<\/code>: set to <code>true<\/code> to show each image caption\/content below the image\n- <code>show_exif<\/code>: set to <code>true<\/code> to show camera EXIF metadata below each image<\/p>\n\n<p>Example shortcode:\n    [wp_photo_directory username=\"mdburnette\" count=\"24\" columns=\"4\" aspect=\"landscape\" size=\"large\" random=\"true\" show_caption=\"true\" show_exif=\"true\"]<\/p>\n\n<h3>Default Settings<\/h3>\n\n<p>Admins can configure plugin defaults at <strong>Settings &gt; My WP Photos<\/strong>. These defaults are used when shortcode\/block attributes are not explicitly provided.<\/p>\n\n<p>Editors can override any default at the shortcode or block level.<\/p>\n\n<h3>WordPress Photo Directory<\/h3>\n\n<p>This plugin uses the REST API provided by the WordPress Photo Directory to determine the author ID from the username and load the corresponding photo list. The directory can also be visited at https:\/\/wordpress.org\/photos.<\/p>\n\n<p>All photos are CC0 licensed. No rights are reserved, so you are free to use the photos anywhere, for any purpose, without the need for attribution.<\/p>\n\n<p>Learn more at https:\/\/wordpress.org\/photos\/faq\/<\/p>\n\n<h3>Accessibility and Performance<\/h3>\n\n<ul>\n<li>Uses semantic list markup for gallery items.<\/li>\n<li>Includes alt text fallbacks, lazy loading, and async image decoding.<\/li>\n<li>Caches author lookups and photo API responses with transients.<\/li>\n<li>Supports paginated requests so larger <code>count<\/code> values can exceed 100 photos.<\/li>\n<li>Includes responsive column scaling so configured columns reduce on smaller screens.<\/li>\n<\/ul>\n\n<h3>Internationalization<\/h3>\n\n<ul>\n<li>Includes <code>Text Domain<\/code> and <code>Domain Path<\/code> metadata.<\/li>\n<li>Includes a translation template at <code>languages\/my-wp-photos.pot<\/code>.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>my-wp-photos<\/code> plugin to your site and activate it.<\/li>\n<li>Optional: Configure plugin-wide defaults in <strong>Settings &gt; My WP Photos<\/strong>.<\/li>\n<li>Add the <strong>WP Photos Gallery<\/strong> block to a post\/page and configure settings in the sidebar, or add the <code>[wp_photo_directory]<\/code> shortcode.<\/li>\n<li>Set a username in the block\/shortcode, unless you configured a default username in plugin settings.<\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.0 (February 14, 2026)<\/h4>\n\n<ul>\n<li>Added WP Photos Gallery block for the block editor with live dynamic preview.<\/li>\n<li>Added plugin admin settings page for default gallery values.<\/li>\n<li>Added shortcode\/block-level overrides for plugin defaults.<\/li>\n<li>Added <code>columns<\/code> setting (max 6) with responsive column scaling.<\/li>\n<li>Added <code>random<\/code> setting for shortcode and block.<\/li>\n<li>Added <code>show_caption<\/code> setting to display image captions\/content below images (default off).<\/li>\n<li>Added <code>show_exif<\/code> setting to display camera metadata below images (default off).<\/li>\n<li>Added support for any positive <code>count<\/code> value via paginated API requests.<\/li>\n<li>Added <code>languages\/my-wp-photos.pot<\/code> for translation readiness.<\/li>\n<li>Improved accessibility with semantic markup and image loading attributes.<\/li>\n<li>Added transient caching and API response validation.<\/li>\n<li>Improved shortcode\/block attribute validation and sanitization.<\/li>\n<\/ul>\n\n<h4>0.0.1 (November 8, 2023)<\/h4>\n\n<ul>\n<li>Initial plugin release.<\/li>\n<\/ul>","raw_excerpt":"Display your WordPress Photo Directory photos as a shortcode or Gutenberg block gallery.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/180717","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=180717"}],"author":[{"embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mdburnette"}],"wp:attachment":[{"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=180717"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=180717"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=180717"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=180717"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=180717"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ast.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=180717"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}