- Last updated
- 2 weeks ago
- Version
- 2.0.0
- Tested up to
- WP 7.1.3
About this plugin
This plugin adds a “Photo Directory” search UI to wp-admin that talks to the
public Photo Directory REST API.
You can search, preview, and import photos directly into your own Media
Library, where the imported image behaves exactly like any regular upload
— usable as a featured image, inside blocks, in a gallery, etc.
Entry points:
- Media > Photo Directory — a dedicated search/browse admin page.
- “Photo Directory” button next to Add Media in the classic editor.
- “Photo Directory” tab inside the native WordPress media picker itself
(Set Featured Image, Add Media, an Image block’s Media Library button,
etc.) — works in both the classic and block editor, since they share the
same underlying media picker.
Notes for developers
- This is an unofficial integration with a public but not formally
documented API.includes/class-photofetch-api.php::normalize_item()is where
the raw JSON from the Photo Directory gets mapped into predictable
sizes/alt/authorfields — it tries several plausible shapes
(media_details.sizes, an embedded featured-media object, a bare
source_url, etc.). If wordpress.org changes the API’s response shape,
this is the one function that should need updating. - Title and alt text are sourced independently: alt text prefers a real
alt-text field if the API exposes one, otherwise falls back to the same
text used for the Description field (seePhotoFetch_API::normalize_item()for
the exact priority order). It’s never derived from the title. For title,
known upstream placeholder strings (currently “Photo Detail”, “Untitled”,
“Untitled Photo” — seephotofetch_generic_title_placeholdersfilter) are
treated as no title at all, and a fallback title is derived from the
photo’s slug instead (e.g.red-fox-in-snow“Red fox in snow”). If
the slug itself isn’t usable, the title falls back to “Untitled photo”. - The attachment’s Description field (post_content) and alt text both get
the photo’s full description text; its Caption field (post_excerpt) gets
only the photographer credit line (e.g. “Photo by Jane Smith, via the
WordPress Photo Directory.”), or is left empty if no author name is
available. - The search/browse picker UI doesn’t display each photo’s title — many
photos on the Photo Directory only have a slug-derived fallback title
(see above), which isn’t meaningful to show while browsing. The title is
still set on the imported attachment; it’s just not shown in the grid. - Imports are deduplicated: each imported attachment gets a
_photofetch_source_id meta value, and re-importing the same photo returns the
existing attachment instead of downloading it again. - Image format conversion (Settings > Photo Directory,
PhotoFetch_Settings::get_format()) happens in
PhotoFetch_Importer::maybe_convert_image(), right after download and before
sideloading. It re-checkswp_image_editor_supports()at import time
rather than trusting the stored setting outright, and falls back to the
original file on any failure. - Search results are cached for 5 minutes via transients to avoid hammering
the upstream API on repeat searches. - All photos on the Photo Directory are released CC0 (no attribution
required), but the plugin stores the original photo URL and author name
(when available) as_photofetch_source_url/_photofetch_source_authorattachment
meta for your own reference, in addition to the caption credit above.
Analytics
Live from WordPress.org, refreshed daily. Last refresh Oct 28, 2026.
- Passes every health check below.
Health checks
Everything a careful site owner looks at before installing.
- Actively maintained Last release 2 weeks ago
- Tested with current WordPress Tested up to 7.1.3
- Support questions answered Nothing open in the last two months
- Well rated No ratings yet
- Latest day
- 1
- Typical day
- 6
- Peak
- 50 Oct 16
View as table
| Day | Downloads |
|---|---|
| Oct 27 | 1 |
| Oct 26 | 4 |
| Oct 25 | 5 |
| Oct 24 | 1 |
| Oct 23 | 4 |
| Oct 22 | 12 |
| Oct 21 | 7 |
| Oct 20 | 5 |
| Oct 19 | 8 |
| Oct 18 | 9 |
| Oct 17 | 22 |
| Oct 16 | 50 |
Not ranked yet. Install, download and rating ranks cover the 5,000 most popular plugins on WordPress.org, and Trending needs about 100 downloads on a typical day.
Gathering install data
WordPress.org only publishes today's install count, so WPFolks records it every day. The chart appears here once there is enough history to draw.
Reviews
From folks on WPFolks
No reviews from folks yet. Used it? Be the first to say how it went.
