0+
June 14, 2026
May 29, 2026
Snopix adds reverse-image search to your WordPress site. Visitors drop an
image onto the search widget and the plugin returns the most visually similar
images already in your media library – ranked by a composite score that looks
at overall structure, colour palette, and edge patterns all at once.
The same fingerprints power a Duplicates tab in the admin: it clusters
near-identical attachments so you can keep one copy and bulk-delete the rest.
Place a search widget on any page using the [snopix_search] shortcode.
Default card layout – framed widget, good for a standalone search page:
[snopix_search]
Inline layout – borderless, flows naturally with your page content:
[snopix_search variant=”inline”]
Narrow layout – compact single column, fits a sidebar or tight layout:
[snopix_search variant=”narrow” max_results=”6″]
Custom title and more results:
[snopix_search title=”Find similar products” max_results=”24″]
Card with a custom prompt and result cap:
[snopix_search variant=”card” title=”Reverse Image Search” max_results=”16″]
Optional attributes:
variant – card (default), inline, or narrow.title – header label shown above the drop zone. Default: “Search by image”. Ignored by the inline variant.max_results – number of result images to show. Accepts 1-48. Default: 12.The block editor also exposes these options via a Snopix Search panel on
the core Shortcode block, so you can configure the widget without typing
the shortcode manually.
By default the search endpoint is open to all visitors. Restrict it to
logged-in users only from the Settings tab in Media Snopix.
The dashboard includes a drag-and-drop search panel that lets admins test
reverse-image search directly from the media library page without publishing a
shortcode anywhere.
The Duplicates tab scans your indexed images against each other and groups
near-identical files. Each group shows the images side by side with a “keep”
selector. Delete all duplicates in a group with one click, or use the global
Delete all duplicates button to clean everything at once.
New uploads are fingerprinted automatically on save. Existing images are
indexed in the background via WP-Cron in batches, so large libraries
(10 000+ images) can be indexed without hitting PHP time limits.
[snopix_search] shortcode (card, inline, and narrow variants)./wp-json/snopix/v1/ with rate limiting on the public search endpoint.JPEG, PNG, GIF, WebP, BMP.
Snopix creates one custom table ({prefix}snopix_index) with one row per
indexed image. Uninstalling the plugin drops the table unless you turn off
Drop data on uninstall in the Settings tab.
Snopix is functional, but search ranking, duplicate detection and the
threshold tuning may be less accurate than expected. You may see occasional
false positives or miss visually-similar images depending on your media
library. Please report anything that looks off.
snopix folder to /wp-content/plugins/ (or install the zip via Plugins Add New Upload Plugin).[snopix_search] to any page or post to give visitors the same search widget.JPEG, PNG, GIF, WebP, and BMP. Other types (SVG, HEIC, AVIF, TIFF) are
rejected at both the upload and search endpoints.
card (default) – a self-contained framed widget with a drop zone, progress bar, and result grid. Best as a standalone element on a dedicated search page.inline – no card border or header label; the drop zone and results sit flush with your page content. Good when the search feels like part of a larger UI.narrow – compact single-column layout designed for sidebars or narrow content areas.Add [snopix_search] to the body of any post or page. In the block editor,
insert a Shortcode block and either paste the tag or use the Snopix Search
panel in the block sidebar to configure it visually.
For a sidebar, use [snopix_search variant="narrow" max_results="6"]. For a
full-width search page, use [snopix_search max_results="24"].
Yes. Go to Media Snopix Settings and set Search visibility to
Logged-in users only. The REST endpoint and the frontend widget both
enforce the same rule.
The fingerprint table is compact (one row per image). The bulk indexer runs in
chained WP-Cron batches, so it will not time out regardless of library size,
though indexing 10 000+ images takes several minutes.
The indexer reads raw bytes via PHP-GD. If your offload plugin keeps a local
copy until indexing is done, you are fine. If files are removed from the local
filesystem before the indexer runs, those images are skipped.
The composite score combines perceptual hash, colour histogram, and edge
histogram (weights 0.40 / 0.35 / 0.25). Format conversions, resizes, and JPEG
recompression are typically recovered with >0.95 similarity. Heavy blur,
extreme downscale, or noise corruption may score near the threshold and
occasionally not rank first. Tuning is ongoing.
Search matches a probe image (something you upload) against the indexed
library. Duplicate detection clusters the indexed images against each other
to find pairs or groups that are already near-identical, without needing an
external probe.
Snopix is built for single-site installs. It creates one
{prefix}snopix_index table per site and is not network-activation aware.
Activate it per-site rather than network-wide.
Deactivate and delete the plugin. By default your index is kept on uninstall.
To remove all plugin data – index table, options, transients, scheduled cron
events, and per-user meta – enable Drop data on uninstall in the Settings
tab before deleting the plugin.
wp-i18n as a dependency; build artefacts reorganised to assets/ subdirectories.readonly properties that broke activation on PHP 8.0 (the declared minimum version).[snopix_search] shortcode.