Selective Image Guard | A deterrent for unauthorized downloads and scraping

Descriere

Selective Image Guard is a lightweight WordPress plugin that adds multiple layers of protection to your website’s images. It’s ideal for photographers, designers, and content creators who want to deter theft and unauthorized use of their visual content.

Key Features

  • Desktop Screenshot Prevention: Applies a blur filter to protected images when specific keyboard shortcuts for screenshots are detected. This is a deterrent, not a foolproof solution.
  • Print Protection: Blurs protected images when a user attempts to print the page.
  • Selective Protection: You control which images are protected. The plugin only affects images you mark as protected in the media library.

How It Works

  1. Navigate to your media library and select the image you want to protect.
  2. Check the „Protect this image” option.
  3. The plugin will automatically apply front-end protections to the selected image to help prevent unauthorized access.

Free Features

The free version gives you solid protection against common image theft techniques:

  • DevTools Detection – Prevents users from opening browser developer tools to inspect and steal images.
  • JavaScript Disabling Detection – Detects when JavaScript is disabled, ensuring protections remain active.
  • Desktop Screenshot Prevention – Blocks most attempts to capture screenshots of your images on desktop.
  • Print Protection – Prevents printing of protected images directly from the browser.

PRO Features

The PRO version unlocks advanced and flexible controls for complete image protection:

  • Bulk Protection – Quickly apply protection to all images across your website with a single setting.
  • Featured Images Protection – Protects your WordPress featured images from theft.
  • Protection by Post Type – Apply image protection only where you need it (e.g., posts, pages, custom post types).
  • WooCommerce Product Galleries – Keep your product images safe and protect your online shop from unauthorized copying.
  • Watermark – Automatically add a customizable watermark to your images for extra security.
  • Premium Support – Get direct, priority support from the plugin author.

Don’t understimate the value of a deterrent.

This plugin provides a deterrent, not a foolproof solution. No client-side technique can offer 100% protection against a determined attacker.
But don’t underestimate the value of a deterrent.

Think about the methods used to keep mosquitoes away. Even if they don’t work 100%, would you rather be surrounded by hundreds of mosquitoes or just a couple? That’s the idea of a deterrent.

Examples of Use

Here are several examples where you would want to display an image on a site but discourage people from sharing it:

  • Online course slides – You want students to see diagrams or infographics, but not download or redistribute them outside your platform.

  • Stock photography previews – You show high-resolution images to logged-in subscribers, but do not want those same images shared publicly without a license.

  • Members-only content – For example, fitness programs or meal plans with recipe cards as images, visible only to paying members.

  • Confidential documents – An internal portal where staff see charts or scanned reports, but you do not want them forwarded outside the company.

  • Product prototypes – Showing early design mockups (e.g. fashion sketches or unreleased product photos) to investors or testers, but preventing leaks to competitors.

  • Protection against unauthorized scraping – Preventing automated bots from copying images and republishing them without permission.

  • E-commerce product photos – Protecting your catalog from competitors scraping product images to use in their own stores.

  • Real estate listings – Preventing property photos from being scraped and reused on unauthorized portals.

  • Artistic portfolios – Protecting photographers, illustrators, and designers from having their portfolio images scraped and reused without attribution.

  • News and media outlets – Protecting journalistic images from being scraped and re-hosted by content farms.

  • Stock agencies – Protecting preview images (with or without watermarks) from being scraped in bulk to avoid licensing.

  • Recipe or DIY blogs – Protecting step-by-step photos from being scraped and republished elsewhere.

More Information About Image Protection

For more details about image protection and the limitations of client-side techniques, read the article: How to Protect Images on WordPress (And How to Prevent Theft)

Credits

Developed by Jose Mortellaro

Întrebări frecvente

Will this plugin completely prevent image theft?

No. While this plugin provides strong deterrents, a determined user can still bypass them, for example, by taking a physical screenshot of the screen. However, these protections are highly effective at stopping most casual users and automated scrapers. But don’t underestimate the value of a deterrent.
Think about the methods used to keep mosquitoes away. Even if they don’t work 100%, would you rather be surrounded by hundreds of mosquitoes or just a couple? That’s the idea of a deterrent.

I can still see the protected images when I open the DevTools

The plugin does not protect images for users who have the privilege to upload files.
Please test it in a browser where you are not logged in.

Does this plugin affect all images on my site?

No. Only images that you explicitly mark as protected in the media library will be affected.

Does it work with a CDN?

The protected images will include the following headers:

header( 'Expires: Thu, 01 Jan 1970 00:00:00 GMT' ); // Already expired
header( 'Cache-Control: no-store, no-cache, must-revalidate, max-age=0' );
header( 'Cache-Control: post-check=0, pre-check=0', false ); // For Internet Explorer
header( 'Pragma: no-cache' );

These headers instruct browsers and CDNs not to store the protected images in cache.

In general, CDNs should respect these headers. If, for any reason, your CDN does not, you can exclude URLs containing /protect-image/ from being cached.

If a CDN still caches the images despite these rules, the protection will not work. However, this would require two failures: the CDN ignoring the headers and the cache exclusion not taking effect. For this reason, CDNs should normally not be an issue.

Is JavaScript required for the main protections?

Yes. The key protections rely on JavaScript to detect user actions. However, the plugin will still provide a warning for users who have JavaScript disabled.

Will this affect my site’s SEO?

The plugin may interfere with how protected images are indexed by search engines. This is why Selective Image Guard is designed to be selective—you can choose which images to protect, ensuring that other, unprotected images remain fully accessible to search engine crawlers.

Recenzii

25 august 2025 1 răspuns
Ho provato diversi sistemi per proteggere le immagini, ma nessuno si è dimostrato davvero efficace come questo plugin. Non solo blocca il tasto destro e impedisce il trascinamento delle foto (cosa che fanno quasi tutti), ma gestisce anche aspetti più complessi come verificare se la console è aperta, se si accede direttamente al file ecc… Quello che mi ha colpito di più è la semplicità: installazione immediata, nessuna configurazione complicata e risultati visibili da subito. In più, funziona perfettamente anche con i plugin di cache.
Citește o recenzie

Contributori și dezvoltatori

„Selective Image Guard | A deterrent for unauthorized downloads and scraping” este un software open-source. La acest modul au contribuit următoarele persoane.

Contributori

Istoric modificări

2.1.4

  • Fixed: Screenshot protection not working with the Divi theme.
  • Fixed: Resolved an issue causing a continuous page refresh in certain situations.

2.1.3

  • Fixed: Not possible to protect images in header and footer
  • Added: Mu-plugin to solve conflicts with other plugins and improve performance

2.1.2

  • Added: DevTools allowed for authorized users (as a default users with ‘upload_files’ capability)
  • Added: Hooks for the incoming PRO version

2.1.1

  • Added: Blocking of Fn + F12 to open the DevTools

2.1.0

  • Added: Blocking of anauthorized remote requests

2.0.9

  • Added: Detection of AwesomeScreenshot Chrome Extension

2.0.8

  • Fixed: Conflict with Elementor PRO

2.0.7

  • Added: Three fingers detection on touchscreens

2.0.6

  • Fixed: Possible saving protected iamges to Photos on iPhone

2.0.5

  • Fixed: Images showing in Sources if the mobile simulation of DevTools is enabled

2.0.4

  • Fixed: Sometimes images showing in DevTools Sources preview in Google Chrome

2.0.3

  • Fixed: Wrong DevTools detection

2.0.2

  • Fixed: Screenshots not blocked if image SRCs added directly to the content

2.0.1

  • Fixed: PHP

2.0.0

  • Fixed: Issues on mobile
  • Fixed: Not working with image SRCs directly written in the post content

1.1.9

  • Fixed: Protected images showing on DevTools Source on Google Chrome

1.1.8

  • Fixed: Protected images showing on DevTools mobile simulator

1.1.7

  • Enhanced: Preloaded protected image placeholders for a quicker replacement

1.1.6

  • Fixed: Protected image visible on source

1.1.5

  • Fixed: False detection on mobile

1.1.4

  • Enhanced: No need anymore for blocking the mouse right-click

1.1.3

  • Enhanced: Blocked key combinations to open the devtools

1.1.2

  • Enhanced: DevTools detection

1.1.1

  • Added: image placeholder if the DevTools is open

1.1.0

  • Added: image placeholder if JavaScript is disabled

1.0.9

  • Added: preventing right-click

1.0.8

  • Fixed: missing images

1.0.7

  • Fixed: prevent dragging

1.0.6

  • Fixed: caching issues
  • Fixed: 404 errors

1.0.5

  • Enhanced: image name replaced with image size slug in the URL for better security.

1.0.4

  • Fixed: image sizes not taken.

1.0.3

  • Fixed: spelling errors.

1.0.2

  • Fixed: protected images not showing in some situations.

1.0.1

  • Fixed: protected images not showing in the backend.

1.0.0

  • Initial release.